Hessian ist ein binäres Netzwerkprotokoll, mit dessen Hilfe Daten zwischen Computerprogrammen ausgetauscht und Remote Procedure Calls durchgeführt werden können. Hessian wird üblicherweise über HTTP übertragen.
Der Name Hessian kommt aus dem britischen Englisch und bezeichnet grob gewebten Stoff aus Jute (in amerikanischem Englisch „Burlap“ genannt, welches auch der Name des XML-Netzwerkprotokolls Burlap des gleichen Herstellers ist).
Als binäres Protokoll ist Hessian insbesondere für die Versendung von Binärdaten geeignet. Diese müssen nicht wie bei textuellen Protokollen encodiert oder als Anhang mitgeschickt werden. Binäre Protokolle wie RMI, Oracles ORMI, Spring HTTP Invoker und Hessian sind darüber hinaus wesentlich performanter als XML-basierte Protokolle. Hessian ermöglicht Datenaustausch zwischen Programmen, die in unterschiedlichen Programmiersprachen implementiert wurden.
Obwohl Hessian hauptsächlich für die Verwendung für Webservices gedacht ist, kann es beispielsweise mittels der Klassen HessianInput und HessianOutput der Java-Implementierung von Caucho auch für direkte TCP-Kommunikation oder allgemeiner für Serialisierung verwendet werden.
Hessian wurde von Caucho Technology Inc. entwickelt. Ebenfalls entwickelte Caucho Open-Source-Implementierungen von Hessian für Java, Python und ActionScript, die unter der Apache-Lizenz von Caucho bezogen werden können.
Implementierungen
Hessian gibt es in untereinander kompatiblen Implementierungen für die folgenden Programmiersprachen:
Verwendung
Das Spring-Framework bietet eine Integration von Hessian und Burlap, um auf entfernte Services zugreifen zu können.
Das OR-Mapping-Framework Apache Cayenne unterstützt Hessian, um Datenbank-Objekte zwischen Client und Server zu transportieren.
Weblinks
- Hessian-Protokoll auf Caucho.com
- Spring and Hessian for Fast, Easy Java Remoting, Jacek Furmankiewicz, August 21, 2009
- Java Remoting: Protocol Benchmarks, Performancevergleich von Daniel Gredler zwischen Hessian, Burlap, Oracles ORMI, RMI, XML-RPC Implementierungen und Spring HTTPInvoker
Einzelnachweise
- ↑ Java Remoting: Protocol Benchmarks (Memento des vom 11. Januar 2010 im Internet Archive) Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis. , Performancevergleich von Daniel Gredler zwischen Hessian, Burlap, Oracles ORMI, RMI, XML-RPC-Implementierungen und Spring HTTP Invoker
- ↑ Hessian-Implementierungen von Caucho
- ↑ Spring Dokumentation: Using Hessian or Burlap to remotely call services via HTTP
- ↑ Apache Cayenne Documentation: CWS Deployment with Hessian