对于跨语言over-the-wire二进制格式,你会推荐Google Protocol Buffers或Caucho Hessian吗?或者其他任何东西,比如Facebook Thrift?
发布于 2010-06-26 19:20:57
我们使用Caucho Hessian,因为它降低了集成成本和简单性。它的性能非常好,所以它在大多数情况下都是完美的。
对于一些跨语言集成不那么重要的应用程序,有一个更快的库可以压缩更多的性能,称为Kryo。不幸的是,它并没有被广泛使用,而且它的协议也不像黑森语的协议那样是准标准的。
发布于 2009-03-11 01:22:45
取决于用例。PB是紧密耦合的,最好在内部与紧密耦合的系统一起使用;不适合共享/公共接口(如在两个以上的特定系统之间共享)。Hessian更具自描述性,在Java上有很好的性能。在我的测试中比PB更好,但我确信这取决于用例。PB似乎在处理文本数据方面有问题,也许它已经针对整数数据进行了优化。
我认为这两个都不是特别适合公共接口,但如果你想要二进制格式,这可能不是一个大问题。
编辑:根据jvm-serializers基准测试,Hessian性能实际上并不是那么好。而且,只要您确保添加了强制在Java上使用快速选项的标志,PB就会非常快。如果PB不适合公共接口,那么什么才是?在国际海事组织中,像JSON这样的开放格式在外部上更优越,而且速度往往不够快,因此性能并不是很重要。
发布于 2011-07-22 09:39:43
对我来说,Caucho Hessian是最好的。
它非常容易上手,而且性能很好。我已经在本地测试过了,潜伏期大约是3毫秒,在局域网上你可以预期大约10毫秒。
使用hessian,您不必编写另一个文件来定义模型(我们使用java + java)。它节省了大量的开发和维护时间。
https://stackoverflow.com/questions/461319
复制相似问题