RPC通信协议的选择
来源:互联网 发布:mac草莓红和番茄红 编辑:程序博客网 时间:2024/05/19 05:03
1、基于TCP协议实现的RPC
由于处于协议栈的下层,能够更灵活的对协议字段进行定制,减少网络传输字节数,降低网络开销,提高性能,达到更大的吞吐量和并发数,但是需要更多的关注底层复杂细节,实现的代价更高,胶南实现跨平台调用。
而随着请求规模的扩张,基于TCP协议RPC的实现,程序需要考虑多线程并发,锁,IO等等复杂的底层细节的实现,实现起来较为复杂,在大流量高并发压力下啊,任意一个细小的错误,都会被无线方法,最终导致程序宕机。
2、基于HTTP协议的RPC
可以使用JSON或者XML格式的相应数据,而JSON和XML作为最通用的格式标准,开源的解析工具已经相当成熟,在器上进行二次开发屏蔽了很多的层繁琐的细节,非常简便和简单。而对于基于HTTP协议的实现来说,很多成熟的开源WEB容器已经帮器处理好这些事情,如tomcat、jboss、apache等等,开发人员可以将更多的精力集中在业务的实现上,而非底层细节的处理。
当然,基于HTTP协议的实现,也有其处于劣势的一面,由于是上层协议,发送包含同等内容的信息,使用HTTP协议传输所占用的字节数肯定要比使用TCP协议占用的字节数更多,因此,同等网络环境下,通过HTTP协议传输相同内容,效率会比基于TCP协议的数据传输要低,信息传输所占用的时间要更长。
当然,通过优化代码实现以及使用gzip数据压缩,能够缩小这一差距,通过权衡利弊,结合实际环境中器性能对于用户体验的影响来看,基于HTTP协议的RPC还是有很大优势的。
当系统的需求是高并发和高并发时,我们更多的选择是基于TCP的RPC,当系统需求是异构、跨平台的调用,我们更多的采用HTTP协议,需求决定技术路线。
- RPC通信协议的选择
- Http与RPC通信协议的比较
- Http与RPC通信协议的 比较
- Http与RPC通信协议的比较
- Http与RPC通信协议的比较
- Hadoop RPC通信协议
- 校园局域网网络通信协议的选择
- 互联网公司的RPC框架如何选择?
- 初步了解下RPC远程通信协议
- Hadoop通信协议——RPC原理详解
- loadrunner选择winsocket 通信协议,把接收到的数据包保存到本地计算机进行分析
- 自定义通信协议与PB通信协议的优缺点
- 常见通信协议区别——tcp、udp、rpc、http、socket
- 常见通信协议区别——tcp、udp、rpc、http、socket
- 局域网通信协议及选择【组网工程】
- 通信协议的一般思路
- 通信协议的阅读学习方法
- 串口通信协议的定制
- Android Studio代理设置(SDK下载代理设置)
- HDU 2099 整除的尾数解题思路
- 程序员面试宝典第五章 程序设计基本概念
- 对象复制和对象赋值
- u-boot的编译及配置 mkconfig
- RPC通信协议的选择
- Laravel常用的小知识
- Set接口
- Starting httpd: (98)Address already in use: make_sock: could not bind to address [::]:80 (98)Address
- 正确使用Block避免Cycle Retain和Crash
- java.lang.ClassNotFoundException: org.apache.jsp.login_jsp
- CheungSSH比Ansible更优秀的Linux SSH批量管理服务器 执行命令上传下载自动化运维工具
- 4.2-4
- Pow(x, n)