既然有 HTTP 请求,为什么还要用 RPC 调用?

回答·2
最热
最新
  • 1.rpc 和 http 不是一个纬度的概念,很多 rpc 框架都是支持 http 协议调用的 2.个人理解驱动 rpc 产生的最大的需求还是,规范化和面向对象。如果有多台服务提供者提供服务,你要用 http 请求你请求哪个地址?请求失败后的容错机制你怎么定义和编写?各个服务调用的信息怎么统计?你可能用 nginx 等技术来进行负载,但做完这些所有的代码都耦合在一起不便复用,维护难,修改难。rpc 框架将负载,代理请求,容错,监控,协议等等都给你抽象并封装起来,让你的远程调用如本地调用如德芙般丝滑 3.其实各有优劣吧,如果不是分布式系统 rpc 其实用起来更麻烦,还是要看那种方式更适合你们的系统,存在即合理
  • rpc 是远程调用,能自己封装协议,解析起来更容易,http 协议解析是比较消耗 cpu 的。