2017-09-26 57 views

回答

1

ActiveMQ只是一个Java应用程序,嵌入式版本提供了与独立版本相同的功能。实际上,您可以将嵌入式代理配置为从XML文件获取其配置,在这种情况下,它看起来与独立代理非常相似。

如果您需要编程配置的好处,那么嵌入代理是一件合理的事情;也就是说,您想根据XML文件中难以实现的规则来配置事物。如果要在代理和应用程序组件之间进行紧密耦合操作并将消息数据传递到内存中,则也是有意义的。如果您将JMS用作应用程序内的模块间通信机制,则可能会出现这种情况。

嵌入代理有一个缺点 - 它可能是一个深刻的问题 - 难以将代理中的问题与应用程序中的问题区分开来。弄清楚内存消耗失控的原因可能非常困难。如果您需要,您可以获得对ActiveMQ的商业支持,但任何商业机构都很难支持混合经纪商+应用程序安装。

+0

您提到“您可以配置嵌入式代理从XML文件进行配置,在这种情况下,它看起来与独立代理非常相似。”我该怎么做?我还没有找到任何代码或API来做到这一点?你能分享更多的信息吗? – masiboo

+0

我相信你可以用引用XML配置文件的'ClassPathResource'实例化一个'BrokerFactoryBean'。然后调用'getBroker()'方法,依此类推。 –