RMI服务导出器和HttpInvoker之间的区别



RMI服务导出器和HttpInvoker之间有什么区别?

我知道RMI使用RMI作为底层通信技术和调用程序标准http post。还有其他值得注意的区别吗?

RMI是一种标准的Java技术,原则上是可移植的。您可以轻松地与其他Java应用程序进行交互。

Spring HTTP调用程序是一项专有技术。它们和RMI一样,使用Java序列化,但使用标准HTTP协议作为底层网络层。一方面,这是不太可移植的,因为您仅限于其他Spring应用程序。另一方面,与二进制RMI协议相比,使用标准HTTP协议可能被视为更具可移植性。

选择:

  • RMI如果您需要跨Java应用程序的可移植性

  • HTTP调用程序如果您需要透明的网络传输,可以很好地与防火墙等配合使用。

  • SOAP/REST如果您的API应跨不同的平台/客户端工作,并且需要使用标准HTTP协议工作,则web服务

  • Thriftprotobuf如果您需要高效且可移植的二进制协议

最新更新