最近在网上看了一个帖子: 主题: 客户端用delphi写,服务器端用java写,这样的模式是否可行呢?
其中用户 greateWei 的思路 提醒了我:使用 XML_RPC的方式 进行不同语言的交互。以前在某软件公司做过 JAVA => XML => HTTP = >XML => DELPHI 的 系统,没有使用其他的技术,仅使用了 IDHTTP组件来获取XML。唯一的感觉就是构造过程比较麻烦,特别是构造 XML 时。现在用于有个组件了XML-RPC。
系统架构实现基于几点考虑:
1、XML-RPC同SOAP比较:由于Delphi SOAP客户端存在一些性能问题和同Java实现存在一些兼容性问题,因此考虑采用XML-RPC实现,而且XML-RPC实现同SOAP实现相比较,性能要好很多;
2、XML-RPC同SOCKET比较:采用HTTP协议可以有效穿透不同网络防火墙;
3、采用XML格式交换数据,而不采用XML-RPC标准格式交换数据,主要是由于XML-RPC格式比较简单,复杂的数据格式很难满足需求,直接使用对象XML数据流方式,有利于系统扩展;
今天小试了Apache XML-RPC:http://ws.apache.org/xmlrpc/,与 Delphi XM