Hessian (Webprotokoll)

Netzwerkprotokoll

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.[1] 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.[2]

Implementierungen

Bearbeiten

Hessian gibt es in untereinander kompatiblen Implementierungen für die folgenden Programmiersprachen:

Verwendung

Bearbeiten

Das Spring-Framework bot eine Integration von Hessian und Burlap, um auf entfernte Services zugreifen zu können.[3] Diese wurde allerdings mit Version 5.3 abgekündigt[4] und mit Version 6.0 entfernt.

Das OR-Mapping-Framework Apache Cayenne unterstützt Hessian, um Datenbank-Objekte zwischen Client und Server zu transportieren.[5]

Bearbeiten

Einzelnachweise

Bearbeiten
  1. Java Remoting: Protocol Benchmarks (Memento des Originals 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.@1@2Vorlage:Webachiv/IABot/daniel.gredler.net, Performancevergleich von Daniel Gredler zwischen Hessian, Burlap, Oracles ORMI, RMI, XML-RPC-Implementierungen und Spring HTTP Invoker
  2. Hessian-Implementierungen von Caucho
  3. Spring Dokumentation: Using Hessian or Burlap to remotely call services via HTTP
  4. Spring Dokumentation: Using Hessian to Remotely Call Services through HTTP (Deprecated). In: Spring Framework Documentation. VMware, Inc., abgerufen am 17. November 2023 (englisch).
  5. Apache Cayenne Documentation: CWS Deployment with Hessian