RPC调用: 什么是RPC调用?

961 阅读1分钟

RPC调用

Remote Procedure Call (远程过程调用)

和Ajax有什么相同点?

  • 都是两个计算机之间的网络通信
  • 需要双方约定一个数据格式

rpc为服务器与服务器之间的通讯,ajax为浏览器与服务器之间的通讯

和Ajax有什么不同点?

  • 不一定使用DNS作为寻址服务
  • 应用层协议一-般不使用HTTP
  • 基于TCP或UDP协议

寻址/负载均衡

  • Ajax :使用DNS进行寻址

浏览器通过域名请求dns换取回来ip地址, 在通过ip地址换取公网的数据信息

  • RPC :使用特有服务进行寻址

服务器通过不同标识换取公网ip, 在通过ip地址换取公网的数据信息

TCP通信方式

  • 单工通信

单工通信就是允许客户端或者服务器端单向发包, 不可同时发包

  • 半双工通信

半双工通信就是在同一时间段只能一端往另外一端发起通讯, 半双工通信也可以理解为轮番单工通信

  • 全双工通信

全双工通信就是俩端可以同时发起通讯

单工通信类似独木桥, 全双工通信可以比喻成双向车道

二进制协议

  • 更小的数据包体积
  • 更快的编解码速率

ajax 使用 http 协议

rpc使用二进制流,二进制数据体积更小,计算机编码更快