微服务治理平台的RPC方案实现

本文深入探讨了RPC在微服务中的重要性,阐述了RPC过程中需解决的问题,如序列化、服务发现等。接着介绍了常见的开源RPC方案,如gRPC、Dubbo和Spring Cloud。重点讲解了用友云自研的RPC框架iris,其特点包括可插拔的序列化机制、丰富的对象类型、独特的服务注册和服务发现机制、精准的异常处理机制和能力扩展机制。iris框架旨在为企业级微服务提供稳定高效的远程调用解决方案,并支持搭建其他微服务核心功能。
摘要由CSDN通过智能技术生成

导读:本文主要探讨了rpc框架在微服务化中所处的位置,需要解决的问题。同时介绍了用友云微服务治理平台的rpc解决方案,为什么选择该方案、该方案提供的好处是什么。同时也会介绍用友RPC框架的基本结构以及在实现时所用到的一些关键技术。希望通过本文读者能够一窥用友rpc框架的原理,并藉此开发出更优秀的微服务应用。

一、rpc在微服务中的重要性

随着越来越多的公司向着互联网方向转型,服务化这个概念已经深入人心。而rpc框架无疑是微服务中的重要一环。rpc框架的基本功能是将远程调用模拟成本地调用。调用本地函数很简单,传入参数执行逻辑获得返回值就可以了。但是实现一个远程调用就要考虑的多一些:
在这里插入图片描述
  如图所示,调用和服务双方就不得不考虑在调用过程中产生的一些序列化、服务寻址、超时、异步、上下文管理等非业务问题,这些问题并不是开发者的核心问题,但是繁杂远程调用实现却为开发者带来了巨大的工作量,这就为业务开发团队带来了一个不小的困扰。因此使用一个统一的rpc框架在应用微服务化进程中是相当重要的。
  此外rpc框架还能够实现公司不同团队开发的异构应用提供互相调用的需求,通过统一的rpc调用框架java、go、python等语言开发的应用可以互相使用已存在的服务接口,解放了团队技术栈的限制、实现了各种服务实现上的解耦。
在这里插入图片描述
  rpc调用框架是微服务化的必要条件,rpc框架的性能、功能、特性直接决定了微服务项目最终的表现。总而言之,搞微服务先要搞定RPC框架才行。

二、rpc过程中需要解决的4个问题

在这里插入图片描述
  一个rpc框架至少要有上图中的几个调用流程:
  1)调用端发出调用方法(服务)的请求
  2)ClientStub先进行服务发现,找到需要调用的服务,然后进行请

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值