如何选择中间件范例

时间:2012-06-21 16:26:28

标签: java osgi ejb-3.0 apache-camel middleware

我一直在阅读Java中间件解决方案,除非我完全离开这里(我可能已经完成了,在这种情况下请先纠正我!),您似乎可以为企业应用程序选择四种主要的中间件解决方案/范例:

  • 完全兼容的Java EE(EJB3s);或
  • 第三方ESB,如Apache Camel或Mule;或
  • 的OSGi;或
  • 事件驱动架构

我正在寻找一些标题或者要遵循的协议,这样我就可以说:

  

鉴于业务需求xyz,此应用程序的最佳中间件策略是xyz。

我想我想知道这四者中的每一个有哪些优点/缺点/优势/警告,以及这些属性如何适应这四条途径中的哪一条落后的决策。

有人可以提供真实的用例,以确定这4个中的每一个都比其他选项更可取吗?也许从这些用例中我们可以提取这样的量规。

2 个答案:

答案 0 :(得分:0)

一个好的第三方EIS架构可以包含其他三个选项,所以一个人不会推荐它....

答案 1 :(得分:0)

我认为第五个答案是:“第三方通信中间件,如DDS,CORBA或JMS”。这些都是用于进程间数据通信的标准化技术。

我个人喜欢DDS(Data Distribution Service),因为它的性能(本地网络上的使用延迟时间为100次),灵活性(端点的动态发现意味着没有服务器查找),以及强大的数据存储,演示和过滤选项。 DDS支持Java(除了其他语言之外),用于多个领域的企业应用程序(财务,医疗,国防部,仅举几例)。