3

有没有办法使用 JMX 或使用 HTTP 请求来启动、停止或重新启动在 tcserver 中运行的应用程序?例如,在 tomcat 6.0 中,可以执行以下操作来启动应用程序:

http://localhost:8080/manager/start?path=/examples

当我启动 hyperic 代理时,我看不到为代理进程定义的任何 Mbean,以在 tcserver 中启动/停止运行时实例。

4

1 回答 1

2

Tomcat(可能还有 tcserver)为每个 WebModule 注册一个 MBean,看起来像

Catalina:J2EEApplication=none,J2EEServer=none,j2eeType=WebModule,name=//localhost/jolokia

其中域名和名称属性取决于您的安装和 WebModule。这些 MBean 中的每一个都有一个start()和一个stop()操作。

如果您使用的是Jolokia 代理,您可以直接使用 HTTP 调用,例如

  wget -O - -q
      http://localhost:8080/jolokia/exec/Catalina:J2EEApplication=none,J2EEServer=none,j2eeType=WebModule,name=/--/localhost/-/jolokia/start

(斜杠需要转义,单斜杠用/-/,双斜杠用/--/。详见Jolokia参考手册)。

于 2011-07-20T10:32:17.707 回答