我从事一个基于 JavaEE 8 (Liberty 18.0.0.4) 的项目。
我想知道:
1)在我自己的应用程序中嵌入activeMQ或在Liberty应用程序服务器上集成然后使用JMS api有什么区别?
2)关于嵌入式activeMQ有什么建议?
我从事一个基于 JavaEE 8 (Liberty 18.0.0.4) 的项目。
我想知道:
1)在我自己的应用程序中嵌入activeMQ或在Liberty应用程序服务器上集成然后使用JMS api有什么区别?
2)关于嵌入式activeMQ有什么建议?
无论 ActiveMQ 是否嵌入在您的应用程序中,您仍然可以使用 JMS API 与代理一起工作。
我想说独立用例和嵌入式用例之间的主要区别是规模和管理。
嵌入式用例通常是小规模的。例如,可能只有 1 个客户端与代理一起工作(即,与嵌入式代理在同一 JVM 中的客户端)。最多我希望有少数客户端连接到嵌入式代理。嵌入式代理通常更受资源限制,因此更难扩展,因为它们与嵌入的应用程序共享 JVM 和系统资源。
嵌入式用例通常也更难管理。一个独立的 ActiveMQ 代理将部署一个 Web 控制台并公开远程 HTTP 和 JMX 管理功能。嵌入式经纪人通常不会。也就是说,由于嵌入式经纪人的规模普遍较小,管理并不是一个重要的问题。
独立代理更容易扩展,因为它们位于自己的 JVM 中,并且通常位于自己的硬件上。因此,它们可以轻松调整并获得更多资源。它们通常也更易于管理,因为它们部署了 Web 控制台并公开了远程 HTTP 和 JMX 管理功能。