搜公众号
推荐 原创 视频 Java开发 开发工具 Python开发 Kotlin开发 Ruby开发 .NET开发 服务器运维 开放平台 架构师 大数据 云计算 人工智能 开发语言 其它开发 iOS开发 前端开发 JavaScript开发 Android开发 PHP开发 数据库
Lambda在线 > 360linker > 有http 了,为什么还要rpc?

有http 了,为什么还要rpc?

360linker 2018-12-14
举报


 

技术应该不是为了使用新技术而去使用,而应该是旧技术存在某些瓶颈,存在难以支撑或者扩展性越老越差等问题暴露出来之后,用新技术来进行解决。今天,我们来讨论一下RPC和HTTP的内在区别:

RPC是一种技术的概念名词,RPC包括传输协议和编码协议。HTTP是一种传输协议,RPC可以通过HTTP来实现,也可以通过Socket自己实现一套协议来实现。

那RPC最大的优点,或者说它相比简单的HTTP接口,它的优势、更适合它的业务场景是怎样的呢?简单的HTTP又哪里不足,哪些场景明显不太适合呢?

http接口是在接口不多、系统与系统交互较少的情况下,解决信息孤岛初期常使用的一种通信手段;优点就是简单、直接、开发方便。利用现成的http协议进行传输。但是如果是一个大型的网站,内部子系统较多、接口非常多的情况下,这时候RPC框架的好处就显示出来了,首先就是长链接,不必每次通信都要像http一样去3次握手什么的,减少了网络开销;其次就是RPC框架一般都有注册中心,有丰富的监控管理;发布、下线接口、动态扩展等,对调用方来说是无感知、统一化的操作。第三个就是安全性,RPC的安全性是要优于http的。最后就是最近流行的服务化架构、服务化治理,RPC框架是一个强力的支撑。

rpc其实是一种概念,http也是rpc实现的一种方式。论复杂度,dubbo/hessian用起来是超级简单的。最近我个人用dubbo和hessian比较多,http的几乎都被废弃了。欢迎老铁们留言和我讨论。


版权声明:本站内容全部来自于腾讯微信公众号,属第三方自助推荐收录。《有http 了,为什么还要rpc?》的版权归原作者「360linker」所有,文章言论观点不代表Lambda在线的观点, Lambda在线不承担任何法律责任。如需删除可联系QQ:516101458

文章来源: 阅读原文

相关阅读

举报