2

我需要使用以下模式构建字符串:

<Server>;<Node>;<Cell>;<Version>;<MessageListenerThreadPool-ID>;<ORBThreadPool-
ID>;<WebcontainerThreadPool-ID>;<TCPChannelsThreadPool-ID>

所以我需要写几个标准线程池的ID,但是我找不到任何关于线程池ID的信息。我只找到了线程池名称。可能有人知道我在哪里可以找到有关线程池 ID 的信息?

谢谢!

PS我正在使用Websphere 7.x

4

3 回答 3

2

似乎没有与 JMX 对象关联的线程池 ID;只是一个线程池名称。您可以编写类似于下面的脚本来列出线程池及其属性。

wsadmin>pools = AdminConfig.list('ThreadPool').split()
wsadmin>for pool in pools:
wsadmin>        print pool
wsadmin>        print
wsadmin>
Default(cells/cluentiusNode12Cell/nodes/node2/server/provider1|server.xml#ThreadPool_1183121908658)


HAManagerService.Pool(cells/cluentiusNode12Cell/nodes/node2/servers/provider1|hamanagerservice.xml#ThreadPool_1080665401693)

Message.Listener.Pool(cells/cluentiusNode12Cell/nodes/node2/servers/provider1|server.xml#ThreadPool_1183121908663)

ORB.thread.pool(cells/cluentiusNode12Cell/nodes/node2/servers/provider1|server.xml#ThreadPool_1183121908656)

... snip ...

WMQJCAResourceAdapter(cells/cluentiusNode12Cell/nodes/node2/servers/provider1|server.xml#ThreadPool_1332907301375)

WebContainer(cells/cluentiusNode12Cell/nodes/node2/servers/provider1|server.xml#ThreadPool_1183121908657)

server.startup(cells/cluentiusNode12Cell/nodes/node2/servers/provider1|server.xml#ThreadPool_1183121908662)

wsadmin>print AdminConfig.show(pools[9])
[customProperties []]
[inactivityTimeout 60000]
[isGrowable false]
[maximumSize 10]
[minimumSize 5]
[name WebContainer]
wsadmin>

show() 命令显示您确实可以使用的属性。

于 2012-08-14T04:11:12.507 回答
2

使用 JMX 获取管理对象(JSR-77:J2EETM 管理)。从 Websphere 获取它们的示例在http://www.ibm.com/developerworks/websphere/techjournal/0402_qiao/0402_qiao.html中给出。

此 API将帮助您访问 JXM。

首先查找对象是否可以通过管理控制台访问。然后查看您将通过 JMX API 调用从服务器接收到的对象列表。

于 2012-08-13T12:23:10.510 回答
0

我找到了我的问题的答案。

线程池 ID 可以从Threadpool节点下的JConsole获得。有许多线程池,并且列出的线程池 Mbean 具有objectName属性,如下所示:

WebSphere:name=ORB.thread.pool,process=server1,platform=dynamicproxy,.......server.xml#ThreadPool_1183122130078,cell=someCell,spec=1.0

在这种情况下,线程池 ID 为1183122130078

谢谢大家。

于 2012-08-14T07:16:37.500 回答