ActiveMQ 更改 Web 控制台端口
ActiveMQ change Web Console port
我目前正在使用 ActiveMQ 和 JMS。我面临的问题是我想更改 ActiveMQ Web 控制台的端口(运行 as localhost on Linux - ubuntu 22)。在默认端口 (8161
) 上工作没有问题,但是当我在文件 jetty.xml
中更改端口时,Web 控制台不会启动(或短暂启动然后停止)。
下面是我做的步骤(安装路径是:/opt/apache-activemq-5.17.1/
)
$ cd opt/apache-activemq-5.17.1/conf
$ sudo nano jetty.xml
在 jetty.xml
中将端口从 8161
更改为 61616
:
<bean id="jettyPort" class="org.apache.activemq.web.WebConsolePort" init-method="init-method="start">
<!-- the default port number for the web console -->
<property name="host" value="127.0.0.1"/>
<!--property name="port" value="8161"/>-->
<property name="port" value=61616">
</bean>
保存并返回后我启动ActiveMQ:
$ cd /opt/apache-activemq-5.17.1/bin/linux-x86-64
$ ls -l
total 152
-rwxr-xr-x 1 root root 15456 Mai 22 10:07 activemq
-rwxr-xr-x 1 root root 15248 Mai 22 10:07 libwrapper.so
-rwxr-xr-x 1 root root 111027 Mai 22 10:07 wrapper
-rw-r--r-- 1 root root 6730 Mai 22 10:07 wrapper.conf
$ sudo ./activemq start
Starting ActiveMQ Broker...
# Checking the status
$ sudo ./activemq status
ActiveMQ Broker is running (26867).
# Checking the status again (about 2-5 seconds execution last command)
$ sudo ./activemq status
ActiveMQ Broker is not running.
Edit/Solution:
服务器没有启动,因为 OpenWire 已经在侦听端口 61616
。我已经恢复了默认配置。如果您使用 JMS,则可以通过浏览器在默认端口 8161
上访问 ActiveMQ,并在 Java 中使用 tcp://localhost:61616
发送消息。感谢用户 justin-bertram!
默认情况下,ActiveMQ 在端口 61616
上侦听来自 OpenWire 客户端的连接。在 activemq.xml
中查看:
<transportConnector name="openwire" uri="tcp://0.0.0.0:61616?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/>
因此,如果您将 Jetty 更改为也监听端口 61616
,则 Jetty 或 ActiveMQ 本身将无法启动,因为一次只能将一个服务绑定到任何特定端口。
我目前正在使用 ActiveMQ 和 JMS。我面临的问题是我想更改 ActiveMQ Web 控制台的端口(运行 as localhost on Linux - ubuntu 22)。在默认端口 (8161
) 上工作没有问题,但是当我在文件 jetty.xml
中更改端口时,Web 控制台不会启动(或短暂启动然后停止)。
下面是我做的步骤(安装路径是:/opt/apache-activemq-5.17.1/
)
$ cd opt/apache-activemq-5.17.1/conf
$ sudo nano jetty.xml
在 jetty.xml
中将端口从 8161
更改为 61616
:
<bean id="jettyPort" class="org.apache.activemq.web.WebConsolePort" init-method="init-method="start">
<!-- the default port number for the web console -->
<property name="host" value="127.0.0.1"/>
<!--property name="port" value="8161"/>-->
<property name="port" value=61616">
</bean>
保存并返回后我启动ActiveMQ:
$ cd /opt/apache-activemq-5.17.1/bin/linux-x86-64
$ ls -l
total 152
-rwxr-xr-x 1 root root 15456 Mai 22 10:07 activemq
-rwxr-xr-x 1 root root 15248 Mai 22 10:07 libwrapper.so
-rwxr-xr-x 1 root root 111027 Mai 22 10:07 wrapper
-rw-r--r-- 1 root root 6730 Mai 22 10:07 wrapper.conf
$ sudo ./activemq start
Starting ActiveMQ Broker...
# Checking the status
$ sudo ./activemq status
ActiveMQ Broker is running (26867).
# Checking the status again (about 2-5 seconds execution last command)
$ sudo ./activemq status
ActiveMQ Broker is not running.
Edit/Solution:
服务器没有启动,因为 OpenWire 已经在侦听端口 61616
。我已经恢复了默认配置。如果您使用 JMS,则可以通过浏览器在默认端口 8161
上访问 ActiveMQ,并在 Java 中使用 tcp://localhost:61616
发送消息。感谢用户 justin-bertram!
默认情况下,ActiveMQ 在端口 61616
上侦听来自 OpenWire 客户端的连接。在 activemq.xml
中查看:
<transportConnector name="openwire" uri="tcp://0.0.0.0:61616?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/>
因此,如果您将 Jetty 更改为也监听端口 61616
,则 Jetty 或 ActiveMQ 本身将无法启动,因为一次只能将一个服务绑定到任何特定端口。