如何正确监视来自WebSphere 6.1的实际数据库连接数?

时间:2016-08-09 12:57:46

标签: websphere connection-pooling jmx websphere-6

我需要监控从Websphere到数据库的实际连接数。我试图以三种不同的方式做到这一点,但每种方式都给了我不同的结果。 我正在使用Webpshere 6.1,它有几个节点,每个节点包含三个服务器。所有服务器都在同一个集群中。

  1. Tivoli Performance Viewer。在TPV中,我可以选择特定服务器,然后选择性能模块,JDBC连接池,Oracle RAC JDBC提供程序。从那里我可以看到创建,关闭的连接总数和连接池的大小。很好,但这给了我PoolSize的平均值1或2。

  2. 使用Jolokia访问MBean。 我已在群集上部署了Jolokia应用程序,因此应将其分发到每个服务器。应用程序工作,但是当我执行“list”命令时,它应该列出Websphere上所有可能的MBean,它给了我数百个,但它们都与节点上的第一个实例相关。例如,当使用192.168.1.1/jolokia/list访问Jolokia时,它会提供MBean列表,所有MBean都与192.168.1.1上配置的第一个实例(server1)相关。它不应该显示与该节点上的所有三个服务器相关的MBean吗? Nevertheles,其中的值也是TPV中的1或2。

  3. 在Linux shell中使用netstat。 另一个问题在这里使用netstat列出与特定数据库建立的连接时,它显示来自每个服务器进程的大约30个连接,从该节点提供大约90个与数据库的连接。我不明白这些联系来自哪里。

  4. 哪些信息最相关?我错过了什么吗?

1 个答案:

答案 0 :(得分:0)

JDBC PMI counters PoolSize给出给定服务器上池的当前大小,但不是必需的活动连接(但它们将从数据库和netstat的角度打开)。您可以使用PoolSize - FreePoolSize获取当前使用的连接数。

要获得监视每个服务器的总连接数,或使用数据库监视工具。

您还可以安装和使用PerfSevlet以XML格式获取这些计数器。