Mule ESB和java企业应用服务器之间的差异

时间:2012-06-07 12:48:20

标签: java-ee comparison mule

我目前正在观看Mule 101: Demonstrations of all things Mule教程,因为我愿意理解整个Enterprise Service Bus的事情。本教程类似于我观看过的有关应用程序服务器或PaaS的许多其他教程。

Mule ESB和Glassfish域管理服务器(例如)之间有什么区别?

  • 您可以在群集中启动多个应用程序。经过!
  • 您拥有包含内聚原子服务的模块化架构。经过!
  • 您具有横向可扩展性。经过!
  • 一个负载均衡器后面的多个物理服务器。经过!
  • 基于不同语言的服务器之间的互操作性 - 例如Glassfish和IIS之间的通信。好吧,如果你使用规范数据模型(REST,SOAP,XML),你不应该有很大的问题。半检查!

Mule ESB有哪些功能,没有现代应用服务器没有?

对不起,对于不那么StackOverflow类型的问题,我理解这里没有明确答案的比较问题。

3 个答案:

答案 0 :(得分:5)

  

Mule ESB有哪些功能,没有现代应用服务器没有?

Mule ESB可以运行Mule应用程序,这是一种主要处理集成任务的专有应用程序。

来自Mule Application Architecture doc

  

在最简单的层面上,Mule应用程序接受一系列连接   一次发送一条消息,然后按顺序处理每条消息   收到了。有时,Mule应用程序返回不同的   消息到原始消息的来源。在其他情况下,   应用程序可能会以原始或更改的形式发送消息   一个或多个第三方。或者它可能同时做到这两点。

Application Format doc,Mule应用程序是:

  
      
  • Zip文件。是的,这是一个带有“zip”扩展名的常规档案。
  •   
  • 相同拉链的解压缩版本(爆炸应用)
  •   

答案 1 :(得分:3)

每个都专注于不同的应用领域。 Mule是服务总线,Glassfish是一个应用程序容器。正如您所注意到的,像许多工具一样,它们在某种程度上是可以互换的,但每种工具都有不同的强度。

Mule宣传service-oriented-architecture视图。它通过配置将服务相互连接。在这里,它就像messaging infrastructure,例如JMS,Apache Camel等。 在企业bean的位置,它提供了将组件粘合在一起的“组件”。但理想情况下,这些都是无国籍和轻量级的。事件驱动的体系结构试图实现一种有效的解决方案,例如异步消息传递,非阻塞IO和消息传递保证。

虽然可以在ESB中构建整个应用程序,但结果更像是Rube Goldberg machine

Glassfish推广n-tier application视图。它的技术涉及标准model-view-controller paradigm的每一层以及更多。它支持非常抽象的应用程序,但它为服务和消息传递提供adapters,它既可以是外部独立服务,也可以是解耦(通过RMI或IIOP)。该设计侧重于性能的稳健性和安全性,并允许容器代表组件保证安全性和可靠性。

您无法控制企业bean之间的内部消息传递,例如您不能重新路由请求,切换到异步调用bean或提供性能保证。

答案 2 :(得分:0)

Mule ESB有哪些功能,没有现代应用服务器没有? Mule ESB可以运行Mule应用程序,这是一种主要处理集成任务的专有类型的应用程序。

来自Mule Application Architecture doc:

在最简单的级别,Mule应用程序一次接受一个消息,然后按接收顺序处理每个消息。有时,Mule应用程序会向原始消息的源返回不同的消息。在其他情况下,应用程序可能会以原始或更改的形式将消息发送给一个或多个第三方。或者它可能同时做到这两点。