【发布时间】:2012-05-03 14:47:29
【问题描述】:
我正在尝试为我的下一个分布式应用程序寻找合适的协议中间件。在过去的几天里,我找到了几个规格,想知道我是否错过了一个重要的规格?它应该是二进制协议,支持 RPC,并且可以选择具有不同语言的开源实现。这是我找到的协议列表:
- CORBA
- 冰
- AMQP
- 节俭
这是被解雇的协议列表:
- 基于 XML 的协议,因为它们是基于文本的(XML-RCP、SOAP、手动等)
- 协议缓冲区(闭源)
- COM(仅限 Windows)
【问题讨论】:
-
有什么理由必须是二进制的吗?
-
XML 可以以更节省空间的二进制格式编码,有关选项,请参阅en.wikipedia.org/wiki/Binary_XML。
-
部分通信可能发生在单个主机上的进程之间。 XML(甚至是压缩的 xml)会浪费大量的 CPU 时间
-
没错,它确实会消耗更多的 CPU 时间,但您确定您的 CPU 时间有限吗?您是否真的发现了问题,或者您只是在猜测,因为听起来您仍在设计系统。
标签: protocols