有许多方法可以将Mule ESB部署到生产环境中。根据文档,似乎将Mule作为独立服务运行是推荐的方式。
是否有任何理由不在生产中运行Mule独立?我确定它稳定,但就性能,可靠性和资源利用率而言,它与Tomcat相比如何呢?
我是否还应该考虑在Tomcat中以任何理由运行它?
答案 0 :(得分:4)
使用Tomcat或任何其他Web容器,您可以将该容器的Web层用于HTTP入站端点(通过Servlet传输),而不是Mule的HTTP或Jetty传输。
在类加载,热重新部署和日志记录的处理方面存在其他差异。
现在人们不使用Mule独立的主要原因是公司政策,即“你应该部署在 _ ”。当生产团队获得了管理特定Java应用程序/ Web服务器的经验时,他们希望您在该上下文中部署Mule项目,以便他们能够以众所周知的一致方式管理/监控它。
但是如果您对入站HTTP层感到满意,那么您可以在Mule独立版中获得它,并且您可以将其部署到生产环境中,然后继续使用它。它准备就绪。
答案 1 :(得分:0)
Mule实际上建议部署独立版。在例如容器内部tomcat它必须共享线程池,堆等......这显然可以防止它在最好的情况下执行。
您希望在像tomcat这样的容器内部的主要原因是获得自动部署。即您只需更新您的Mule应用程序.war,容器将使用新应用程序重新启动mule。这有助于测试。
某些传输特定于在容器内运行,例如servlet传输。设计解决方案时OTOH,以便Mule在容器和servlet your'e doing it wrong.
之间传输