RPC框架的使用场景

目前有很多RPC框架,比如阿里的dubbo,那么到底RPC框架有什么优势,什么场景下使用呢。

dubbo 基于 tcp 协议;

一个完整的RPC架构里面包含了四个核心的组件,分别是Client ,Server,Client Stub以及Server Stub,这个Stub可以理解为存根。

eb53c8f2d0a49b763241628f39da890f.JPEG

           RPC的接口定义接口很像Android  跨进程IPC调用的AIDL (Android接口定义语言)。

一、RPC相较于Http接口的优势:

 两者最大的差别在传输协议上,

  1) 数据包

  HTTP带请求头,相比之下,大大精简了传输内容。

   这也就是为什么后端进程间通常会采用 自定义tcp协议 的 rpc 来进行通信的原因。

   HTTP1.1是字符协议。

2) 效率

       像dubbo框架采用TCP协议,二进制传输,Google的grpc 这种 rpc 库使用的 是http2.0协议 (二进制分帧)。

     据说相较于HTTP1.1协议传输,在大规模访问情况下,效率差十几倍。

3)SOA面向服务治理

    流行的RPC架构封装了 “服务发现”,"负载均衡",“熔断降级” 一类面向服务的高级特性。单纯使用http调用则缺少了这些特性。

 

二、使用场景:

1)内部子系统较多。

         众多的内部子系统是驱动采用RPC架构的原因之一,订单系统,支付系统,商品系统,用户系统............, 每个可独立单独布署。

          RPC主要使用在大型企业内部子系统之间的调用。因为大型企业里面系统繁多,业务线复杂,而且效率优势非常重要的一块,这个时候RPC的优势就比较明显了。

         基于HTTP协议的接口,包括Webservice等主要作为对外接口服务。

2)接口访问量巨大。

       RPC基于长连接。

       要求满足支持 "负载均衡",“熔断降级” 一类面向服务的高级特性。

3)接口非常多;

     “服务发现”。

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值