任意の時点で Gemfire サーバーに接続されているクライアントの数を調べようとしています。ドキュメントで見つけましcurrentClientConnections
たが、このデータの読み方が明確ではありません。VMWare VSD を実行しようとしましたが、Windows での起動時にクラッシュします。
このデータにアクセスする方法はありますか?
JConsole またはその他の JMX クライアントを使用して、JMX 経由でこの情報にアクセスすることもできます。サーバー ノードに直接接続すると、そのサーバーの GemFire MBean にアクセスできます。GemFire JMX Manager ノード (デフォルトでは Locator) に接続すると、すべてのサーバー ノードの DistributedMXBean と MemberMXBeans および CacheServerMXBeans が表示されます。
+GemFire
+Distributed [1]
+System --> DistributedSystemMXBean [2]
...getNumClients() [3]
+Member [4]
+member1 --> MemberMXBean [5]
+member2 --> MemberMXBean [5]
+CacheServer
+2090
+member1 --> CacheServerMXBean [6]
..getClientConnectionCount() [7]
+2091
+member2 --> CacheServerMXBean [6]
..getClientConnectionCount() [7]
[1] these MBeans are viewable only in the JMX Manager (Locator by default)
[2] ObjectName is GemFire:service=System,type=Distributed
[3] returns the total number of client connections across the entire cluster
(number of client connections, not the number of unique clients)
[4] these MBeans are viewable in each server node as well as federated in the JMX Manager (Locator by default)
[5] ObjectName is GemFire:type=Member,member={0}
[6] ObjectName is GemFire:service=CacheServer,port={0},type=Member,member={1}
[7] returns the number of client connections for this server
次のコマンドラインは私のために働いた:
watch -n1 "gemfire stats -archive=logs/server/stats/gemfire_stats.gfs | grep -i currentClientConnections"
つまり、すべての統計をリストし、 の値のみを出力しcurrentClientConnections
、プロセスを毎秒繰り返します。
show metrics
次のように、GemFire シェルのコマンドを使用して currentClientConnectionsgfsh
を取得できます。
gfsh>show metrics --member=serv1 --port=40404
出力の cache-server セクションに currentClientConnections が表示されます。
<snip>
cache-server | clientConnectionCount | 0
| hostnameForClients |
| getRequestAvgLatency | 0
| putRequestAvgLatency | 0
| totalConnectionsTimedOut | 0
<snip>
の詳細についてgfsh
は、ドキュメントを参照してください。