在SOA架构中SOAP和RPC这两个概念有什么区别?

本文探讨了SOAP和RPC作为SOA架构中的两种实现方式的区别。详细介绍了SOAP基于HTTP和XML的优势,以及RPC在性能上的优势和局限性。同时,文章还解释了RPC作为一种进程间通信机制的特点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在SOA架构中SOAP和RPC这两个概念有什么区别?

一、
简单来说:SOAP = HTTP+XML+RPC
对于RPC本身可以走HTTP ,TCP等不同的协议,比如淘宝的Dubbo框架,RPC是可以选择走TCP协议还是走HTTP协议的。

二、
SOAP和RPC都是SOA的具体实现方式。
SOAP是基于HTTP和XML的实现,因此会更容易做业务隔离,在系统可维护性和可扩展性上优于RPC。
而RPC是基于TCP或自定义协议的实现,性能会略好于SOAP,但是异构系统间的耦合度会更高,间接增加系统的故障率和排错难度。

三、
RPC是一种进程远程调用的方式,更强调的是异构平台之间进程通信的机制。它可以使用多种协议(包括HTTP以及其他base在TCP的自定义协议)和序列化方式(Json/xml/二进制),组件之间的耦合度比较高。服务管理的机制相对较弱
SOA是一种产品架构的理念,以服务为中心,松耦合,通过定义严谨明确的接口进行通信。有比较完善的服务管理机制。
个人感觉两者并不是一个层面上的架构,可以说RPC是SOA架构的一种实现

四、
刚刚理解这两个知识,感觉这个回答比较合理:
RPC主要还是注重技术上面的实现,SOA注重产品、资源反复、重复利用。

五、C语言如何调用restful服务
其实restful是一种编程风格,使用json+http post组合。C语言可以使用socket实现http post请求,使用http post调用restful服务。平时Java开发时会导入一个resource层的包,通过方法调用实现。实际上是restful服务把http post请求封装成了方法调用,这样更符合Java语言开发习惯。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值