RPC
协议TCP
用作底层协议,并HTTP
再次TCP
用作底层协议。那么为什么 HTTP 被广泛接受呢?
为什么SOAP
使用HTTP
作为底层协议 - 为什么不RPC
呢?
RPC
协议TCP
用作底层协议,并HTTP
再次TCP
用作底层协议。那么为什么 HTTP 被广泛接受呢?
为什么SOAP
使用HTTP
作为底层协议 - 为什么不RPC
呢?
远程过程调用 (RPC) 不是协议,它是 SOAP 中也使用的原则。
SOAP 是一种使用 HTTP 进行传输的应用程序协议(因此它不必考虑编码、消息边界等)。使用 SOAP over HTTP 的原因之一是,对于 HTTP,您通常不需要防火墙规则,而且 HTTP 基础结构已经成熟并且经常推出。
RPC 不需要 HTTP。基本上,RPC 描述了适合远程调用某些代码的任何机制。用于执行 RPC 的传输机制可以是 SOAP over HTTP。它也可以是通过 HTTP 返回一些 JSON 数据的 REST 调用。
SOAP 也可以通过邮件使用,AFAIK(这里不确定)BizTalk Server 应该支持这种情况。但即使是像尝试 SOAP over Avian Carriers这样的奇特事物也可以被视为 RPC,尽管后者的延迟可能不足以满足实际应用程序的需求。
将 RPC 视为以某种方式向目的地发送某种消息,以启动特定操作并(可选)在操作完成后获取一些信息。您选择哪种特定技术来传输这些消息并不重要。