我对 Apache ActiveMQ 的功能感到困惑。
我从这个链接下载了 ActiveMQ 。所以我以这种方式使用它(环境:Windows 7):我启动bin/activemq.bat
,然后它可以工作。
我的问题是:这是否意味着我在我的机器上启动了一个服务器?当我初始化 时ActiveMQConnectionFactory
,代理 URL 是tcp://localhost:61616
. 但是如果我想让我的机器作为服务器,而另一台机器连接到我的服务器呢?
是的,您可以将主盒子用作服务器,并让消费者/订阅者在其他盒子上运行(这将需要连接到服务器 - 您需要指定要建立连接的服务器主机名和端口) - 一旦进入地方,服务器上的消息(主题或队列)可以被客户端消费。
如果您有一个生产者和一个消费者,您可以考虑使用队列 - 如果您有多个消费者/订阅者,您可以考虑设置消费者将订阅的主题。需要根据需要将消息插入到主题/队列中。
您可以在代码中或最好在配置文件中指定服务器信息。
拓扑参考: http: //activemq.apache.org/topologies.html
此外,您可以根据您的用例选择是否保留您的消息。Kaha DB 是首选路线(特别是在关注性能的情况下)。
有用的例子:
http://sujitpal.blogspot.com/2007/12/jms-patterns-with-activemq.html
http://vvratha.blogspot.com/2012/05/java-client-to-sendreceive-messages-for.html
希望能帮助到你。
Apache ActiveMQ ™ 是最流行和最强大的开源消息传递和集成模式服务器,它的作用类似于第三方服务器。
Apache ActiveMQ 速度快,支持许多跨语言客户端和协议,带有易于使用的企业集成模式和许多高级特性,同时完全支持 JMS 1.1 和 J2EE 1.4。Apache ActiveMQ 在 Apache 2.0 许可下发布。
ActiveMQ 具有发送 100 MB 单消息框架并同时保持 1000 个并发连接的能力,有关详细信息,您可以查看文档中的 activemq.xml。