【发布时间】:2014-01-29 09:09:19
【问题描述】:
如果我的问题听起来很幼稚,请原谅。
我无法理解这一点。我不明白 RMI、CORBA 等背后的动机?我的意思是如果这个想法是使用其他地方可用的功能并且可以通过网络访问其他地方,为什么我们不能只使用像 HTTP 这样的协议。事实上,一个软件应用程序/模块/包应该做的就是在网络上可用并发布它可以提供的服务类型。然后当有人请求服务时,只需使用结果数据进行响应。由于 HTTP 和 TCP 是这样的通用协议,使用它们意味着整个 Internet 都可以访问它们。这就是我们在 Web 服务中所做的。
那么,RMI、CORBA 和其他此类标准背后的动机是什么?
请提供一些历史和观点。
这个问题的精神与:CORBA, RMI and SOA
【问题讨论】:
-
Arent(很多?全部?)通过 HTTP 的 RPC 调用? SOAP 请求是 RPC 请求,.. WSDL 是 RPC,...
-
因为人们不能同意
-
发明了很多东西,各有利弊,如果你不喜欢一件事或者它不适合你的需要,何必费心呢。要求和可能性会随着时间而变化,..
-
排队或并行处理、不同的性能(较低的 OSI 网络层)、可访问性(如“端口 80 无论如何都打开”)、安全性、阻塞 - 非阻塞、同步异步、握手、参数验证(每个协议定义,或单独在应用程序中),.. 很多不同!
-
看看一些日期。 RPC:Sun,1983,在一个化身中,还有其他的。 CORBA:OMG 1989。HTTP:Berners-Lee,约 1990。RMI:Sun 1995。互联网商业化:1990 年左右。 Web 服务:1990 年代后期。而且我希望你不要真的认为 HTTP 是一切的答案。