从分布式系统的角度看REST

本文探讨了企业应用集成(EAI)的需求与挑战,特别是在面对信息孤岛时如何提高整体运作效率。介绍了几种实现EAI的技术手段,包括JavaSE中的RMI、JDBC等,以及JavaEE中的EJB。对比了EJB、JMS、Web Services等方案,并讨论了REST在跨语言集成的优势及面临的事务处理和安全性问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原帖:[url]http://www.iteye.com/topic/82227[/url]

为什么有分布式的需求?
我觉得最主要的还是做[b]EAI[/b](企业应用集成),以前我们做企业应用,一般都是孤立系统,譬如公司内部独立系统。但经过几年的发展,企业发现这些信息孤岛的整体运作效率很低,譬如人力资源系统和项目管理系统的用户是独立的,现在要进行整合。当然,EAI更多是企业的核心系统的整合,譬如制造业企业的供应链系统。

怎么整合?当然,要是开始实行像ERP系统,统一数据库恐怕就没有这些问题。另外,要把那些信息孤岛都抛弃重做,能够达到理想的效果吗?考虑到各种风险,干脆取一种折中吧:EAI。

实现EAI有很多种方式,在JavaSE方面,大家看看附件Java API的一张图:Integration API:RMI、JDBC、JNDI、CORBA。如果体现在JavaEE,就是EJB了。

现在在Java领域搞EAI,还是主要三种方式:EJB、JMS、Web Services(SOAP和REST)。去年年底,我做一个地区门户网站内部的集成,就用REST,集成的语言有PHP、Java、Ruby。但一直没有解决一个问题:事务。

现在Web Services(WS)为什么这么火?我认为就是所谓的SOA,而这种SOA,更多是很无奈的遗留系统的集成:我有跑了几十年的C、COBOL系统,现在想让它对其它新系统提供服务,不用WS,还有更好的选择吗?WS这种东西在日本开始流行,因为日本的信息化比中国早不下20年,它们的应用集成需求非常大,而中国的企业信息化才开始几年,集成需求并不强烈。

对于EAI,我认为JMS还不是主流,应该说是Message系统,如IBM的MQ,因为它是跨语言的。而且Message系统可以很好处理像事务这些关键的企业应用需求。
而REST在这个方面还不成熟,虽然有补偿事务。另外,REST也没有安全规范,而基于SOAP有WS-Security规范,虽然也是这三年的事情,也不是很成熟。当然,基于SOAP的WS的事务规范目前也只是draft阶段。
如果REST不能保证[b]安全、事务[/b]这两个关键性需求,那么,我认为它就很难在企业应用领域推广,也许互联网应用还不错,如成功实施REST的Amazon、ebay。
而分布式,主要还是在企业应用。
REST,我认为更多是一种 [b]naked [/b]HTML,专门供应用程序读取,而不是通过浏览器供人看的HTML。

我们往往以做互联网应用的视角来思考企业应用,大家现在去看专门做企业应用领域的TIBCO([url]http://www.tibco.com[/url]:BPM、SOA)、IBM、BEA的产品家族核心就知道了。

据一些大公司推测,未来最有市场前景的几个领域,应该是EAI、电子商务、ERP。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值