内容简介:RPC 和 Web Service 有什么区别?
RPC vs Web Service
使用 SOAP 协议创建 Web Service 需要使用两个备选方案:文档型 SOAP 协议或者 RPC SOAP 消息协议。RPC 指的是远程过程调用,它是一种协议,指定的程序通过它可以去请求指定的位于另一台远程主机上的另一个应用中的服务。在使用 RPC 的时候,无需去了解该应用的网络细节。一个指定的过程调用指的是作为子程序调用甚至函数调用。在使用 RPC 的时候,容易对客户/服务模型过度使用。请求一个服务去执行的应用是在客户端,而提供指定应用执行的计算机称为服务端。RPC 操作可以被称为同步操作,因为它需要一个应用,该应用请求的操作会一直阻塞直到远程过程返回结果。
在多个操作在等待的时候要确保设备处理每个请求不会花费过多时间,RPC 允许多个共享同一个指定地址的线程同时处理,因此可以在它们处理结束的时候给出应答,而不是串行的 - 一个操作必须结束了以后下一个才能开始。
使用 SOAP 控件创建的 Web Service 可以遵循 RPC 或文档消息格式。文档格式可以指定特定的 .xml 文档,以对给定的 XML 图表进行验证。对于 Java,RPC 被应用于 EJB 之类的平台之间的通信,因为这些应用都是用 Java 写的。而 Web Service,则主要应用于跨语言的应用的通信。
RPC 和 Web Service 之间的性能差距是很大的,尽管有些场景下考虑到恢复力它们的差别并不是很明显。RPC 带来了一个拥挤的服务器环境的挑战,这使得你很难进行多个客户端的工作。
另外,Web Service 允许多个服务部署,只要求 Web Service 是通过 HTTP 调用即可。这使得正常的网络发散和路由技术都要采用大型网站。同样需要注意的是,Web Service 的服务器端乃至客户端都不依赖于任何特殊编码。
可以对 RPC 和 Web Service 的恢复力进行公平比较,但需要注意的是 RPC 需要使用调停者才能达到预期效果。这就是 EE EJB 以及各种类似于 Spring 的框架发挥作用的时候了。为了提供最好的服务,最好是引入 RPC 环境之前就开始 Java EE EJB。
总结
- RPC 指的是远程过程调用。
- client/server 模型的使用较多的时候推荐使用 RPC。
- RPC 允许共享指定地址的多个线程的同时处理。
- RPC 部署于使用 EJB 的平台。
- Web Service 应用于跨语言调用的场合。
- Web Service 还应用于异步通信的同步操作。
原文链接: Difference Between RPC and Web Service ,发布日期:2013 年 10 月 26 日。
作者简介:Differencebetween.net 网站 "Protocols & Formats" 频道。
Differencebetween.net 不仅仅会帮你去理解一个主题,还能让你弄清楚两个类似话题之间的区别。该网站为你提供各种主题的实时信息。话题涉猎 "商业" 到 "技术" 等不同种类。他们将每个主题的多个可靠资源编辑并统一到一个页面上,读者可以藉此轻松快速搜集到充足感兴趣的信息。如果你对他们的内容有相关建议可以通过他们的联系邮箱 contact@differencebetween.net 进行反馈。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
虚拟现实:最后的传播
聂有兵 / 中国发展出版社 / 2017-4-1 / 39.00
本书对“虚拟现实”这一诞生自70年代却在今天成为热门话题的概念进行了历史发展式的分析和回顾,认为虚拟现实是当今最重大的社会变革的技术因素之一,对虚拟现实在未来百年可能给人类社会的各个层面带来的影响进行说明,结合多个大众媒介的发展趋势,合理地推演未来虚拟现实在政治、经济、文化等领域的态势,并基于传播学理论框架提出了几个新的观点。对于普通读者,本书可以普及一般的虚拟现实知识;对于传媒行业,本书可以引导......一起来看看 《虚拟现实:最后的传播》 这本书的介绍吧!