我想知道有哪些功能相同或不同?你能否提及这两方面的利弊?另请参阅Embedded BrokerService与已安装的ActiveMQ代理的实际用例。提前致谢!
答案 0 :(得分:1)
ActiveMQ只是一个Java应用程序,嵌入式版本提供与独立版本基本相同的功能。实际上,您可以配置嵌入式代理从XML文件中获取其配置,在这种情况下,它看起来与独立代理非常相似。
如果您需要程序化配置的好处,嵌入代理是合理的做法;也就是说,您希望根据难以在XML文件中实现的规则来配置内容。如果您希望代理和应用程序组件之间的紧密耦合操作,并且消息数据在内存中传递,那么这也是有意义的。如果您在应用程序中使用JMS作为模块间通信机制,则可能出现这种情况。
嵌入代理有一个缺点 - 它可能是一个深刻的 - 使得很难将代理中的问题与应用程序中的问题区分开来。找出失控内存消耗的原因可能非常困难。如果需要,您可以获得ActiveMQ的商业支持,但任何商业组织都很难支持混合代理+应用程序安装。