首页 > 解决方案 > 如何通过 JMX 或 EmbeddedActiveMQ 获取有关连接器的信息

问题描述

对于acceptors,我可以得到类似embeddedActiveMQ.getActiveMQServer().getAcceptors()或 的数据AcceptorControl

但是因为connectors我找不到任何方法来获取数据或创建/删除connector,而不是在 JMX 或 EmbeddedActiveMQ 中。

我加了broker.xml一个connector

<connectors>
  <connector name="connector1">tcp://192.168.58.6:61716</connector>
</connectors>

我以为我可以connector通过

embeddedActiveMQ.getActiveMQServer().getConnectorsService().getConnectors()

但这会返回大小 0。

阿尔忒弥斯 2.16.0 版

标签: activemq-artemis

解决方案


如果您使用 JMX 进行管理,那么您可以getConnectorConfigurations()使用ActiveMQServerControl.

如果您正在使用,EmbeddedActiveMQ那么您可以使用embeddedActiveMQ.getActiveMQServer().getConfiguration().getConnectorConfigurations().values(). 这将为您提供Collection<TransportConfiguration>您已配置的连接器。

在这种情况下,接受器和连接器之间的区别在于,接受器是独立的资源,其部署和管理独立于其他任何东西。另一方面,连接器本质上只是一个配置容器,它被其他组件(例如桥)引用和使用。连接器本身并不部署。


推荐阅读