ESB就象黑暗中的大象,每个人都有不同的感觉.EAI和ESB面向的是同样的用户,同样的需求和集成的问题.只是方法不同而已.
1.ESB是基于开放标准的,不属于任何人专有的标准.用J2EE开发,以JMS做消息传输,以XML表示数据,数据传输用XSLT.而EAI常常有大量专有的组件,如消息和数据格式.尽管所有的EAI都支持开放标准,但是学习曲线比较高.
2.一个关键的不同是:ESB具有分散的和分布式体系结构,更加轻型的安装;EAI遵从HUB-SPOKE体系结构,因而比较大型的实施,重型的,硬件成本高,扩展性也差.
3.SOA:关于这点有很多争议.有两点:"service enabling" 和 "service orientation and orchestration".EAI和ESB都支持service enabling;但是只有ESB才是真正的松散耦合.因而ESB更适合SOA体系结……