最近做一个项目,涉及到多个遗留系统的集成,有c, c++的系统,也有java的系统,所以出现了跨语言通信的问题。通信接口不是很复杂,所以可以使用的技术如下:
Socket: 传统的方法,坏处是要考虑很多通信异常情况。
Hessian: 常用的Java HTTP通信框架,但要集成Web Server,而且c, c++的客户端包不太成熟,不同语言的数据类型映射也可能存在问题。
Restful: 目前比较流行的HTTP通信框架,如Restlet,但我们的通信方式中没有什么Resource的概念,没有用到REST的精髓。
Web Service: 重量级的框架,如Axis2, CXF/XFire。
最终还是选择了Restlet框架。
Socket: 传统的方法,坏处是要考虑很多通信异常情况。
Hessian: 常用的Java HTTP通信框架,但要集成Web Server,而且c, c++的客户端包不太成熟,不同语言的数据类型映射也可能存在问题。
Restful: 目前比较流行的HTTP通信框架,如Restlet,但我们的通信方式中没有什么Resource的概念,没有用到REST的精髓。
Web Service: 重量级的框架,如Axis2, CXF/XFire。
最终还是选择了Restlet框架。