我目前正在观看Mule 101: Demonstrations of all things Mule教程,因为我愿意理解整个Enterprise Service Bus的事情。本教程类似于我观看过的有关应用程序服务器或PaaS的许多其他教程。
Mule ESB和Glassfish域管理服务器(例如)之间有什么区别?
Mule ESB有哪些功能,没有现代应用服务器没有?
对不起,对于不那么StackOverflow类型的问题,我理解这里没有明确答案的比较问题。
答案 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应用程序会向原始消息的源返回不同的消息。在其他情况下,应用程序可能会以原始或更改的形式将消息发送给一个或多个第三方。或者它可能同时做到这两点。