一、JMX简介

  JMX是一种JAVA的正式规范,它主要目的是让程序且有被管理的功能,那么怎么理解所谓的“被管理”呢?试想你开发了一个软件(如WEB网站),它是在24小时不简断运行的,那么你可能会想要“监控”这个软件的运行情况,比如收到了多少数据,有多少人登录等等。或者你又想“配置”这个软件,比如现在访问人数比较多,你想把数据连接池设置得大一些。

  当然,你也许会专门为这些管理来开发软件,但如果你借助JMX,则会发现创建这样的管理程序是如此简单。因为你无需为管理程序来开发界面,已经有通用的JMX管理软件,如MC4J,或者是用一般都附带提供的HTML网页来管理,你要做的仅仅是将自己要被管理和监控类的按照JMX规范修改一下即可。

  中间件软件WebLogic的管理页面就是基于JMX开发的,而JBoss则整个系统都基于JMX构架。下面将JMX的一些概念,从JMX规范转帖如下:

二、JMX构架中的各层及相关的组件

  1. 工具层(Instrumentation Level)
        (a) MBeans(标准的,动态的,开放的和模型MBeans)
        (b) 通知模型:Notification、NotificationListener等类
        (c) MBean元数据类:Attribute、Opreator等类
  2. 代理层(Agent Level)
        (a) MBean Server
        (b) 代理服务。如前一篇的HtmlAdaptorServer等。

  MBean中有getter和setter的就是属性,如前一篇的Hello类中Name。如果只有getter则表示该属性只读。一共有四种MBean,如下:

  1. 标准MBeans(Standard MBeans)设计和实现是最简单的,这类MBean使用自己的方法名作为管理接口;
  2. 动态MBeans(Dynamic MBeans)必须实现一个指定的接口,由于动态MBeans在运行期间暴露它们的管理接口,因此更为灵活;
  3. 开放MBeans(Open MBeans)属于动态MBeans,这类MBean依靠基础数据类型来实现通用管理,并为友情用户进行自我声明;
  4. 模型MBeans(Model MBeans)同样也是动态MBeans,这类MBeans是完全可配置的,在运行期间进行自我声明;它们为资源动态工具提供一个一般性的,有默认行为的MBeans类。
在前一篇中的Hello、HelloMBean就是一个标准MBeans(Standard MBeans)。后面接下来的几篇,我们会继续介绍其他几种MBean。

[JMX一步步来] 2、JMX简介相关推荐

  1. [JMX一步步来] 7、用JDK5.0的JConsole来连接MBean

    前面所有看效果都是通过Html网页来看的.JDK5.0自带了一个jmx客户端,叫jconsole,位于c:\jdk\bin\jconsole.exe.我们来用用这个客户端来连接Mbean Server ...

  2. [JMX一步步来] 1、JMX的Hello World

    一.JMX简介 什么是JMX?在一篇网文中是这样说的:"JMX(Java Management Extensions)是一个为应用程序植入管理功能的框架.JMX是一套标准的代理和服务,实际上 ...

  3. [JMX一步步来] 9、基于JBoss来写MBean

    前面都是用JDK自带的JMX实现来写的MBean,JMX的实现不独SUN一家,JBOSS也有自己的JMX实现.如果你使用JBOSS来做WEB服务器,那么基于JBOSS的实现来写MBean,是一个不错的 ...

  4. jmx jolokia_使用Jolokia和JMX进行客户端服务器监视

    jmx jolokia Java监视工具的选择非常广泛(由Google提供的随机选择和顺序): javamelody 压力探头 JVisualVM 控制台 贾蒙 Java JMX Nagios插件不适 ...

  5. 【jmx学习】2、jmx之Html Adaptor

    一.jmx开发准备 下载地址:http://java.sun.com/products/JavaManagement/download.html 下载jmx-1_2_1-ri.zip(JMX 1.2. ...

  6. 【JMX】1. 什么是JMX、JDK中的JMX实现

    http://damies.iteye.com/blog/51788 什么是JMX JMX        即 Java Management Extensions   Java管理扩展,是一个为应用程 ...

  7. java jmx 开启_动态开启jmx服务

    java可以利用编写mbeans来暴露很多程序指标,jdk自己也有很多指标,例如内存使用以及划分.很多小伙伴都表示这些值不少jstat就可以获取查看的吗,ssh登录上去就可以,也很方便.jstat确实 ...

  8. linux如何查看jmx参数,linux下利用JMX监控Tomcat

    需求: 1,需要详细了解tomcat进程工作状态,以进行优化. 环境: centos6,tomcat7,jdk1.7 解决方案: 1,在服务器上找到catalina.sh文件,在该文件的这一行 # - ...

  9. JMX 简介 和 实例

    What is JMX? 10 mins Quick Start JMX Tutorial 这篇文章作为入门,非常清楚 转载于:https://www.cnblogs.com/tang88seng/p ...

最新文章

  1. Android 7.0 出现 ”FileUriExposedException“ 和 ”解析包出现错误“ 异常的解决办法...
  2. SQL server根据值搜表名和字段
  3. 深度学习已成强弩之末?Bengio等大牛NeurlPS2019上支招
  4. fon在计算机网络中代表什么,计算机网络自顶向下方法第一章学习
  5. Doxygen自动文档生成工具在Eclipse中的集成及使用举例
  6. hadoop大数据--深入讲解hdfs源码
  7. VB6:通过ADO访问Oracle存储过程返回的结果集
  8. hibernate mysql 性能_MyBatis和Hibernate相比,优势在哪里?
  9. C 关于链表的一些操作
  10. 为什么你从来没做过发起人?
  11. Selenium免密码登录学习的方法
  12. 北风网IOS软件工程师课程分享
  13. 样本大小的确定_显着功效样本大小效应大小之间的关系
  14. coreos 安装 mysql_在CoreOS下部署WordPress实例教程
  15. 2023苏州科技大学计算机考研信息汇总
  16. JAVA中的getBytes()方法(史上最能明白的总结)
  17. 佳能LBP2900打印机无法正常打印.用32位驱动安装正常
  18. BUG:Android开发模拟器运行出现Detected ADB对话框
  19. #萌新日志#3.使用pix2pix CycleGAN和3d CycleGAN实现T1和T2加权模态的互转
  20. P1655 小朋友的球

热门文章

  1. 真正可用的CSS文字两端对齐
  2. Java--配置环境变量
  3. html 导航切换内容
  4. 安装 Ruby On Rails on Windows
  5. php 解析pathinfo 类
  6. 解决curl/wget: (7) Failed to connect to github.com port 443: Connection refused无法解析主机或请求拒绝问题
  7. 什么是NoSql?为什么要使用NoSql?
  8. 中国人工智能大赛个人赛正式收官,优质企业、专业参赛团队继续“接棒”
  9. 查看oracle是否open,Oracle查看已被使用的open_cursorssession_cached_cursors
  10. C#中Listbox、Textbox、Richtextbox三者之间的区别 ?