有人使用 Hessian 二进制远程协议来桥接使用 Java 和 .NET 的应用程序吗?

发布于 2024-07-05 22:00:53 字数 228 浏览 5 评论 0原文

Hessian 是一种自定义二进制序列化协议(我认为它是开源的),它构成了二进制跨平台远程处理框架。 我想知道这里是否有人使用过它,如果使用过,那么将一侧的 Java 应用程序与另一侧的 C# 应用程序桥接的解决方案可以带来什么样的性能。 (假设我们正在序列化简单类,并且可能是简单类的数组、列表、字典。)

Hessian is a custom binary serialization protocol, (which is open-source - I think), that forms the basis for a binary cross platform remoting framework. I'd like to know if anyone here has used it, and if so, what sort of performance can we expect from a solution that bridges a Java app on one side with a C# app on the other. (Let us consider that we are serializing simple classes, and may be arrays, lists, dictionaries of simple classes.)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

神也荒唐 2024-07-12 22:00:53

承认“Soap 是过度设计的”,然后赞扬一个非工程化/抽象化的实现,就像我用法语写这篇文章,然后要求你使用谷歌翻译来阅读它,然后用英语赞扬谷歌翻译。

二进制协议是未来的发展方向。 如果您准备编写“智能”代码,当它完全按照编程和开发的方式执行时,您会感谢自己。

所需要的只是一个潜在的 Soap 服务,将您的 SOA 架构带入“异常”模式...我将其称为“异常”模式,因为使用 Soap 实现 SOA 的公司(阅读:XML)每当遇到 SOA 时都会围绕 SOA 实施异常一种事务类型的数据交换,可以连续读取非常大的记录。

*(我可以想象 SOAP 实现后的对话)

那么您有 SOA 吗?
:是的,我们愿意
一切?
:好吧,除了我们的关键业务传输之外的一切...

在您使用时检查一下 WSO2 Web 服务及其 ESB - 如果您这样做,您将再次感谢自己。
Mule 是有原因的,然后 WSO2 提供了对 HESSIAN 的支持。
您可能还想阅读: http://java.sun.com/developer/技术文章/WebServices/fastWS/

Admitting "Soap is over-engineered" and then praising an implementation that un-engineers/abstracts it is like me writing this entry in French, and then asking you to use Google Translate to read it, and then in English praising Google Translate.

Binary Protocols are the way of the future. If you are prepared to write "smart" code you will thank yourself when it performs exactly how it was programmed and developed to perform.

All it takes is one latent Soap service to bring your SOA architecture into an "exception" mode ... I call this the "exception" mode because companies with SOA's implemented in soap (READ: XML) implement exceptions around the SOA whenever they encounter a transactional type of data-interchange in which very large records may be read in succession.

*(I can just imagine the post SOAP implementation conversations being had)

So you have an SOA?
:Yes we do
Everything?
:Well everything except our business critical transports...

Check out WSO2 webservices and their ESB while you are at it - you will thank yourself again if you do.
There is a reason Mule, and then WSO2 provided support for HESSIAN.
You might also want to read: http://java.sun.com/developer/technicalArticles/WebServices/fastWS/

无戏配角 2024-07-12 22:00:53

您看过 HessianC# 项目 (http://www.hessiancsharp.org/) 吗?

Have you looked at the HessianC# project (http://www.hessiancsharp.org/)?

烟雨凡馨 2024-07-12 22:00:53

我是 jni4net 的作者,它是 JVM 和 CLR 之间的开源进程内桥梁。 它构建在 JNI 和 PInvoke 之上。 不需要 C/C++ 代码,而且速度应该相对较快。 我不确定跨边界引用编组是否可以解决您的问题。

I am author of jni4net, open source intraprocess bridge between JVM and CLR. It's build on top of JNI and PInvoke. No C/C++ code needed and it should be relatively fast. I'm not sure if marshalling by reference across boundary would solve your problem.

分開簡單 2024-07-12 22:00:53

这就是 Web 服务旨在解决的问题。 虽然不再简单,但 SOAP 格式允许您在 Java/C# 应用程序上将对象序列化为 XML 表示形式,通过网络传输它们,并在相应的 Java/C# 应用程序中反序列化它们(Java/C# 几乎可以用任何语言替换)可以翻译 XML 文档)。 尽管这里使用“序列化”,但该过程也通常被称为“编组”。

然而,许多人目前正在考虑放弃 Web 服务的 SOAP。 从 Wikipedia 了解有关 Web 服务的更多信息:http://en.wikipedia.org/wiki/Web_services

This is the sort of problem that web services were designed to solve. Although no longer simple, the SOAP format allows you to serialize objects to an XML representation on a Java/C# application, transmit them across the wire and deserialize them in the corresponding Java/C# application (Java/C# may be replaced with virtually any language that can translate an XML document). Although "serialize" is used here, it is also common for this process to be referred as "marshalling".

However, moving away from SOAP for web services is currently being considered by many. Find out more about web services from Wikipedia: http://en.wikipedia.org/wiki/Web_services

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文