社区 Delphi
主题 Delphi Hessian
标签 Hessian
一、简介
Hessian是caucho公司提供的开源协议,基于HTTP传输,服务端不用开防火墙端口。协议的规范公开,可以用于任意语言。Hessian也是一个轻量级的,自定义描述的二进制RPC协议。Hessian的好处是精简高效,可以跨语言使用,我们可以针对任意语言开发对其协议的实现。目前已有实现的语言有:Java、Flash、Python、C++、.NET C#、D、Erlang、PHP、Ruby。还没有Delphi的实现。
二、 为什么选择Hessian
1. Hessian是一个轻量级的RPC协议,数据以二进制方式存储传输。所以简洁、高效。相比web service的SOAP协议的复杂、数据冗余。Hessian的性能要高出很多。
2. 协议规范公开,很多语言都已实现。
三、Delphi实现
Delphi 是一款优秀的RAD开发工具,有着丰富的UI控件,能快速的开发丰富用户体验的客户端界面。如果能采用这样一种架构:J2EE后台应用服务 + Delphi前端表现层(富客户端)+ Hessian通讯。应该是一种不错的选择。
要实现Hessian客户端协议,本质上就是解决2个问题
1. HTTP传输。
这点很好实现,Indy通讯套件中的TIdHttp组件完全符合要求
2. 按Hessian 规范协议对数据进行序列化和反序列化。
由于Hessian协议规范公开,那么我们完全可以用Delphi来实现数据的交换。