Hycz's Blog

Life is a game. Why so serious?

2011/07/11 通过JMX与Cassandra交互

1、首先去http://mx4j.sourceforge.net上下载3.0.1版本以上的MX4J库

2、解压后在lib文件夹下找到mx4j.jar和mx4j-tools.jar,拷贝到cassandra/lib下,重启cassandra

3、在jdk的bin目录中找到jconsole,启动,下面

3.1、如果是jconsole和cassandra都在一台机器上,那么在Local Process块中选择 org.apache.cassandra.thrift.CassandraDaemon

3.2、如果不在一台机器上,那么在Remote Process块中输入需要连接的<hostname>:<port>

——————————————–渣翻译来了————————————————————-

JMX:

JMX是一个Java API,通过两种方式提供了application的管理。一,JMX让你了解你的application的健康状况,和总体性能表现(例如memory,threads,和CPU usage),这些都是普遍适用于所有Java application的。二,JMX让你能够接触到你的application中(已经仪表化的application)的特定的方面。

所谓仪表化,就是指将application code包起来,以提供从application到JVM的hook,这使得JVM能够收集一些额外工具能够使用的数据。这些工具包括监视代理(monitoring agents),数据分析工具(data analysis tools),分析器(profilers)等。JMX不光能让你看到这些数据,还能在运行时更改application的值,以管理这些application(如果启动了这项功能)。

JMX所作的控制操作包括以下:

  • 低可用内存的检测,包括堆中每个刻度空间(graduation space)的大小
  • 进程信息,例如死锁检测,进程数量的峰值,以及当前活动进程数量。
  • 详细的类加载器 追踪
  • 日志级别控制
  • 应用的基本信息,例如application的运行时间,classpath等等

jconsole就是一个JMX代理,当然也有其他的JMX代理。

MBeans:

MBean,就是 managed bean,这是一个特殊的java bean类型,代表着JVM中一个可被管理的资源。MBeans与一个MBean server交互,以让他们的功能远程可用。

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: