Apache ActiveMQ经纪人discovery支持IP multicast。此功能在默认的“演示”配置中激活(见下文)。我想用其他语言(Delphi / Free Pascal)实现发现功能。 Web上是否有一些最小的代码示例或介绍页面,显示了如何在Java中实现它?
如果我理解正确,多播将触发消息代理的答案,消息代理包含有关消息代理的IP和端口的信息。但我无法确定客户端需要指定哪个端口(ActiveMQ documentation)。
但是我无法看到多播客户端应该使用哪个端口。
<!-- Create a TCP transport that is advertised on via an IP multicast
group named default. -->
<transportConnector name="openwire" uri="tcp://localhost:61616"
discoveryUri="multicast://default"/>
...
更新:我找到http://docs.oracle.com/javase/tutorial/networking/datagrams/broadcasting.html并尝试使用此示例代码。
答案 0 :(得分:1)
文档的最佳来源始终是代码本身。如果您查看SVN for ActiveMQ中的源并浏览org.apache.activemq.transports.discovery包,您应该非常了解发现位的工作原理,默认端口都在代码中。
svn co https://svn.apache.org/repos/asf/activemq/trunk activemq