【发布时间】:2016-03-20 00:32:25
【问题描述】:
我创建了两个单独的目录,在其中安装了独立的 Mule ESB 服务器:
/ee/mmc-distribution-mule-console-bundle-3.5.2-HF1
/ee2/mmc-distribution-mule-console-bundle-3.5.2-HF1
我启动了第一台服务器,下面是状态:
[root@x240perf2 mmc-distribution-mule-console-bundle-3.5.2-HF1]# ./status.sh
MMC is running as PID=1998.
Mule Enterprise Edition is running as PID=2619.
然后我尝试启动第二个实例:
[root@x240perf2 mmc-distribution-mule-console-bundle-3.5.2-HF1]# ./startup.sh
Port 8585 is in use, please make it available and try again.
显然,原来的实例正在使用端口 8585
于是我停止第一个实例,启动第二个实例,成功出现,如下:
./startup.sh
Please enter the desired port for Mule [Default 7777]:
Starting MMC, please wait...
class com.sun.jersey.multipart.impl.MultiPartConfigProvider
class com.sun.jersey.multipart.impl.MultiPartReader
class com.sun.jersey.multipart.impl.MultiPartWriter
[11-13 16:49:19] WARN HttpSessionSecurityContextRepository [http-bio-8585-exec-1]: Failed to create a session, as response has been committed. Unable to store SecurityContext.
[11-13 16:49:32] WARN HttpMethodBase [http-bio-8585-exec-12]: Going to buffer response body of large or unknown size. Using getResponseBodyAsStream instead is recommended.
[11-13 16:49:38] WARN HttpSessionSecurityContextRepository [http-bio-8585-exec-12]: Failed to create a session, as response has been committed. Unable to store SecurityContext.
Nov 13, 2014 4:49:50 PM org.apache.catalina.core.StandardServer await
INFO: A valid shutdown command was received via the shutdown port. Stopping the Server instance.
Nov 13, 2014 4:49:50 PM org.apache.coyote.AbstractProtocol pause
INFO: Pausing ProtocolHandler ["http-bio-8585"]
但请注意,它似乎将 8585 用于 tomcat(我对此知之甚少,除了某种应用服务器,从未使用过)
我检查了这个网站:
http://www.mulesoft.org/documentation/display/33X/Running+Multiple+Mule+Instances
但它并没有讨论这个问题。它指向的页面似乎不是最新的。我是不是误会了什么
是否可以同时运行两个独立的 Mule ESB 实例
如果是这样,怎么办? (我将如何更改它使用的端口,我应该修改什么文件)
谢谢
编辑:我的第二个回应回答的帖子:
(顺便说一句:我使用的是 Mule ESB 独立企业版 3.5.2)
为了确保我没有任何正在运行的应用 在端口 8585 上,我关闭了我的原始实例,并创建了两个新实例,并确保没有应用程序部署到任何一个实例。
我启动第一个实例没有问题,但我启动的第二个实例仍然给我端口 8585 in use 错误(来自 startup.sh)
这个网站说MMC默认端口是7777,但是它运行的tomcat默认端口是8585
http://www.mulesoft.org/documentation/display/current/Setting+Up+MMC-Mule+ESB+Communications
我使用以下命令在我的第二个 8585 端口实例中查找所有文件
find . -type f |xargs grep "8585
除了日志文件,我得到了两次点击
startup.sh
and
/mmc-3.5.2-HF1/apache-tomcat-7.0.52/conf/server.xml
我在这两个实例中都没有找到 $MULE_HOME/apps/mmc/mule-config.xml(可能是因为我没有部署应用程序)
在server.xml中,MMC显然使用tomcat来 处理 MMC 应用程序,并且 server.xml 包含 以下:
<Connector port="8585" protocol="HTTP/1.1"
所以我想此时我可以将 8585 更改为 8586,但是...
startup.sh 有几个(大约 9 或 10 个)对 8585 的硬编码引用,以检查 MMC 是否正在运行,并在它是否正在运行时采取措施
那么我实际上是否必须更改整个 startup.sh 以将 8585 替换为第二个实例中的 8586 以及更改 server.xml 端口 8585 引用?
谢谢
【问题讨论】: