HTTP通信与RPC通信区别

      最后更新:2022-04-12 19:11

      概念
      首先,HTTP指的是计算机的七层协议:物理层、数据连接层、网络层、传输层、对话层、代表层、应用层和tcp是传输层协议。应用层协议 http 以 TCP 为基础。
      RPC,即远程进程呼叫,是各种流程之间的一种沟通技术,允许以与当地服务相同的方式获得远程服务(与方法相同,最便捷)

      1、灵活性
      RPC要求服务器和客户使用相同的框架和语言。
      HTTP是跨语言、跨平台和更具适应性。

      2、传输协议
      根据TCP协议或HTTP、UDP等协议等协议,制定区域竞争方案。
      HTTP以HTTP协议为基础。

      3. 业绩消费,主要形式为费时的顺序安排和反顺序安排
      RPC是一种基于节能的高效二元通信方法。
      HTTP, 特别是通过json, 字节大小和顺序需要比节食更长的时间。

      4、网络开销
      RPC和长链路不需要一次三次握手。
      HTTP,短链接

      补充说明:

      1. 简短连接:当通信的双方与数据发生互动时,即形成连接,当数据传输时,即断开连接,即每个连接只发送一次交易。
      2. 长链路(保持连接):表示若干数据集可以在同一连接的基础上连续传输,如果没有发送数据集,双方必须发送链接探测器包,以保持连接的动态连接(保持连接):表示若干数据集可以在同一连接的基础上连续传输,如果不发送数据集,双方必须发放链接探测器包,以维持连接。
      3. 通俗的讲:
        (1) 长途电话与没有挂断的电话相似:双方在电话线上,只要有足够资金,随时可以打电话。
        (2) 短路与经常的电话联系相同:有事情需要做时互相打电话,没有电话就挂断,有电话时再打电话。

      文献目录:链接

      5、负载均衡
      RPC, 基本上具有其自身的负负平衡技术(包括精密的面向服务的能力,如“服务发现”、“负载平衡”和“熔化”)
      HTTP 要求配置 Nginx 和 HAPROXY 。

      6. 服务治理(引进、重新启动新的下游服务,以及当系统下降时上游呼叫者如何不受影响)
      在不影响上游的情况下,可以自动提醒辐射常委会。
      要改变Nginx/HAProxy的设置, HTTP 需要事先通知。

      总结:

      RPC主要用于公司内部服务电话,其性能低、传输高效、服务治理简单(RPC框架通常包括登记中心、丰富的监督管理;分配、下行连接、动态增长等等,对呼叫者来说,不敏感、统一的行动)。
      HTTP主要用于外部异构环境、浏览器界面呼叫、APP界面呼叫、第三方界面呼叫等。

      本文由 在线网速测试 整理编辑,转载请注明出处。

          热门文章

          文章分类