JMX 与系统管理--转】的更多相关文章

前言 在 Java 程序的运行过程中,对 JVM 和系统的监测一直是 Java 开发人员在开发过程所需要的.一直以来,Java 开发人员必须通过一些底层的 JVM API,比如 JVMPI 和 JVMTI 等,才能监测 Java 程序运行过程中的 JVM 和系统的一系列情况,这种方式一直以来被人所诟病,因为这需要大量的 C 程序和 JNI 调用,开发效率十分低下.于是出现了各种不同的专门做资源管理的程序包.为了解决这个问题,Sun 公司也在其 Java SE 5 版本中,正式提出了 Java 管…
Dynamic MBean 是一种在运行时定义其管理接口的 MBean.例如,配置 MBean 可以通过解析 XML 文件来确定它所公开的属性名称和类型. 任何实现 DynamicMBean 接口的类的 Java 对象都是 Dynamic MBean. 前言: 在 Java 程序的运行过程中,对 JVM 和系统的监测一直是 Java 开发人员在开发过程所需要的.一直以来,Java 开发人员必须通过一些底层的 JVM API,比如 JVMPI 和 JVMTI 等,才能监测 Java 程序运行过程中…
通过工具及Java api来监测JVM的运行状态, 需要监测的数据:(内存使用情况 谁使用了内存 GC的状况) 内存使用情况--heap&PermGen @ 表示通过jmap –heap pid 可以获取的值 # 表示通过jstat –gcutil pid 可以获取的值 参数的查看可以通过多种方法 本文中只随机列出一种. 描述 最大值 当前值 报警值 堆内存 @Heap Configuration::MaxHeapSizesum(eden+servivor+old) sum(eden+servi…
前几篇篇文章介绍了介绍了JVM的参数设置并给出了一些生产环境的JVM参数配置参考方案.正如之前文章中提到的JVM参数的设置需要根据应用的特性来进行设置,每个参数的设置都需要对JVM进行长时间的监测,并不断进行调整才能找到最佳设置方案.本文将介绍如果通过工具及Java api来监测JVM的运行状态,并详细介绍各工具的使用方法. 需要监测的数据:(内存使用情况 谁使用了内存 GC的状况) 内存使用情况--heap&PermGen @ 表示通过jmap –heap pid 可以获取的值 # 表示通过j…
SE(J2SE),standard edition,标准版,是我们通常用的一个版本,从JDK 5.0开始,改名为Java SE. EE(J2EE),enterprise edition,企业版,使用这种JDK开发J2EE应用程序,从JDK 5.0开始,改名为Java EE. ME(J2ME),micro edition,主要用于移动设备.嵌入式设备上的java应用程序,从JDK 5.0开始,改名为Java ME. 没有JDK的话,无法编译Java程序,如果想只运行Java程序,要确保已安装相应的…
JVM系列五:JVM监测&工具[整理中]  http://www.cnblogs.com/redcreen/archive/2011/05/09/2040977.html 前几篇篇文章介绍了介绍了JVM的参数设置并给出了一些生产环境的JVM参数配置参考方案.正如之前文章中提到的JVM参数的设置需要根据应用的特性来进行设置,每个参数的设置都需要对JVM进行长时间的监测,并不断进行调整才能找到最佳设置方案.本文将介绍如果通过工具及Java api来监测JVM的运行状态,并详细介绍各工具的使用方法.…
前几篇篇文章介绍了介绍了JVM的参数设置并给出了一些生产环境的JVM参数配置参考方案.正如之前文章中提到的JVM参数的设置需要根据应用的特性来进行设置,每个参数的设置都需要对JVM进行长时间的监测,并不断进行调整才能找到最佳设置方案.本文将介绍如果通过工具及Java api来监测JVM的运行状态,并详细介绍各工具的使用方法. 需要监测的数据:(内存使用情况 谁使用了内存 GC的状况) 内存使用情况--heap&PermGen @ 表示通过jmap –heap pid 可以获取的值 # 表示通过j…
Java内存组成介绍:堆(Heap)和非堆(Non-heap)内存 按照官方的说法:“Java 虚拟机具有一个堆,堆是运行时数据区域,所有类实例和数组的内存均从此处分配.堆是在 Java 虚拟机启动时创建的.”“在JVM中堆之外的内存称为非堆内存(Non-heap memory)”.可以看出JVM主要管理两种类型的内存:堆和非堆.简单来说堆就是Java代码可及的内存,是留给开发人员使用的:非堆就是JVM留给 自己用的,所以方法区.JVM内部处理或优化所需的内存(如JIT编译后的代码缓存).每个类…
jdk6和jdk5相比的新特性有: 1.instrumentation 在 Java SE 6 里面,instrumentation 包被赋予了更强大的功能:启动后的 instrument.本地代码 instrument,以及动态改变 classpath 等等. 2.Http有所增强 3. Java 管理扩展(JMX) 架构及其框架,以及在 Java SE 5 中新引入的 JMX API -- java.lang.management 包 4.JDK 6 中新增加编译器 API(JSR 199)…
前几篇篇文章介绍了介绍了JVM的参数设置并给出了一些生产环境的JVM参数配置参考方案.正如之前文章中提到的JVM参数的设置需要根据应用的特性来进行设置,每个参数的设置都需要对JVM进行长时间的监测,并不断进行调整才能找到最佳设置方案.本文将介绍如果通过工具及Java api来监测JVM的运行状态,并详细介绍各工具的使用方法. 需要监测的数据:(内存使用情况 谁使用了内存 GC的状况) 内存使用情况--heap&PermGen @ 表示通过jmap –heap pid 可以获取的值 # 表示通过j…
原文地址:http://www.cnblogs.com/redcreen/archive/2011/05/09/2040977.html 前几篇篇文章介绍了介绍了JVM的参数设置并给出了一些生产环境的JVM参数配置参考方案.正如之前文章中提到的JVM参数的设置需要根据应用的特性来进行设置,每个参数的设置都需要对JVM进行长时间的监测,并不断进行调整才能找到最佳设置方案.本文将介绍如果通过工具及Java api来监测JVM的运行状态,并详细介绍各工具的使用方法. 需要监测的数据:(内存使用情况 谁…
这篇文章介绍jenkis jmeter的持续集成,利用jenkins定时任务去批处理执行jmeter的jmx脚本文件,并且生成测试报告 1:jmeter的安装这里我就不在赘述了,如有问题可参考我的jmeter系列博文之-jmeter命令行运行-单节点和jmeter命令行运行-分布式测试 2:如果jmeter是单节点部署的,那么jenkins的安装只需安装在jmeter所在的单节点机器上即可:如果jmeter要进行分布式测试,那么将jenkins安装在jmeter的master所在机器上即可 这里…
一.JMX的一些定义与用途 Java Management Extensions:Java管理扩展,是管理系统和资源之间的一个接口,它定义了管理系统和资源之间交互的标准. 1.专门管理,监控jvm的一些信息的,特别是visual vm这个监控jvm的东西,还有一个添加JMX连接的时候 2.能使得基于java语言开发的程序能被管理,并且是可扩展的. 3.用jmx把需要配置的属性集中在一个类中,然后写一个MBean,再进行相关配置.另外JMX还提供了一个工具页,以方便我们对参数值进行修改. 4.让开…
参考文章:https://www.ibm.com/developerworks/cn/websphere/library/techarticles/0908_sunyan_jmxdeploy/index.html http://www.cnblogs.com/dongguacai/p/5900507.html WebSphere 7.0 ND 缺省端口号: 端口名称 独立应用程序服务器Stand-alone  联合应用程序服务器 Deployment Manager 安全代理服务器 管理控制台端…
1. Jenkins 安装插件的两种方式 2. 添加凭据(Credentials) 3. 系统管理--全局工具配置 4. 系统管理--系统设置 5. 常用插件说明 Extended E-mail Notification Deploy war/ear to a container Publish over SSH 其他 6. 环境变量 7. 用户登录与权限设定 8. 使用视图 9. 归档构建产物 10. Jenkins 使用小技巧 1)查看帮助信息 2)变量的使用 3)工作空间 4)永久解决 H…
linux系统管理之安装RHEL 6.4 进入安装界面 这里选择跳过 点击下一步 选择安装语言 选择键盘 选择系统储存方式 选择是否格式化储存设备 给安装的系统一个计算机名 选择时区 给root一个密码 可以忽略或给一个强密码 选择安装的方式 格式化磁盘 创建分区 这里选择默认,进行下一步吧 选择现在自定义 如果想要图形化界面,就安装桌面,想要比较好的体验就全选桌面里面的工具,然后下一步就开始安装系统文件了!!! 系统文件装好后就可以重启,然后简单设置一下,就可以使用了!!! 来自为知笔记(Wi…
系统上线运行后,及时监控报警是很必要的手段,对于ActiveMQ而言,主要监控的指标有:MQ本身的健康状况.每个队列的生产者数量.消费者数量.队列的当前消息数等. ActiveMQ支持JMX监控,使用步骤如下: 一.修改conf/activemq.xml <broker … useJmx="true”> <managementContext> <managementContext createConnector="true" connectorP…
https://my.oschina.net/heroShane/blog/196227 一.启动普通的jar程序 1.执行foo.jar启动命令 java -Dcom.sun.management.jmxremote.port=12345 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -jar foo.jar 2.12345为需要监控的端口,远程机器需要开启…
Tomcat调优及JMX监控 实验背景 ====================================================== 系统版本:CentOS release 6.5 (Final) Tomcat版本:   Apache-tomcat-7.0.54 Tomcat介绍: Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache.Sun 和其他一些公司及个人共同开发而成.由于有了…
最近想学习下java GC优化,就用了一下VisualVM,在远程服务器启动了一个非docker的tomcat,很顺利的就连接了,但是用docker-compose启动的服务却 怎么也连不上,一定是docker的锅. 最终找到了解决方法,在这里 https://forums.docker.com/t/enable-jmx-rmi-access-to-a-docker-container/625 这篇文章中最重要的一句话就是 In my case, I am working with docker…
top   -c    #任务管理器 free  -m    #查看内存使用情况 kill  -9   2312 (说明:强制杀死进程 kill  -9  pid ) df   -h    #查看磁盘使用情况 一. top 1.作用 top命令用来显示执行中的程序进程,使用权限是所有用户. 2.格式 top [-] [d delay] [q] [c] [S] [s] [i] [n] 3.主要参数 d:指定更新的间隔,以秒计算. q:没有任何延迟的更新.如果使用者有超级用户,则top命令将会以最高…
-Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.rmi.server.hostname=192.168.1.54 注: 1. -Dcom.sun.management.jmxremote.port :这个是配置远程 connection 的端口号的,要确定这个端口没有被…
centos7系统管理和运维实战 centos7安装配置 yum install -y net-tools >/etc/hostname echo "sqlserver01" >/etc/hostname systemctl stop firewalld systemctl disable firewalld yum install -y iptables-services systemctl start iptables systemctl enable iptables…

JMX

一.为什么使用JMX,解决那些问题 举一个应用实例:在一个系统中常常会有一些配置信息,比如服务的IP地址,端口号什么的,那么如何来写这些代码呢? 写死在程序里,到要改变时就去改程序,然后再编译发布: 把这些信息写在一个配置文件里(JAVA一般都是*.properties文件),到要改变时只要改配置文件,但还是重新启动系统,以便读取配置文件里的新值: 写一个段代码,把配置值缓存起来,系统在读值的时候,先看看配置文件有没有更动.如有更改则重读一遍,否则从缓存里读取值 用JMX!把配置属性集中在一个类…
卷组 在安装系统时,就会创建一个rootvg卷组.包含自带硬盘(内置硬盘)和系统逻辑卷,一个系统只能有一个rootvg卷组.一般情况下rootvg卷组最好只包含自带硬盘. 一.创建卷组 在创建卷组之前,系统管理员必须知道如下所列的信息. (1)卷组的名字在系统中必须是唯一的.卷组名要求时一个字符串,长度时1至15字符. (2)要确定新卷组中包含哪些物理卷,并保证这些物理卷再系统中是可用状态,而且没有被其他卷组使用.要能知道这些物理卷的名称. (3)确定新卷组中的物理分区大小,它的范围时1到102…
# ----- Execute The Requested Command ----------------------------------------- # ----- JMX Config Start ----- if [ "$1" = "run" ]; then JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote -Djava.rmi.server.hostname=192.168.2.235…
jps.jstack.jmap.jhat.jstat.hprof 基于jmx可以开发web版本,方便压测的时候观测jvm以及线程的信息 ============================================= 压测可以明显观测到线程数.jvm虚拟机的使用情况以及程序的问题…
第十三讲 Linux系统管理 13.1.1进程管理-进程查看 13.1.2进程管理-终止进程 .2工作管理 .3系统资源查看 .4系统定时任务 13.1.1进程管理-进程查看 .进程简介 进程是正在执行的一个程序或命令,每一个进程都是一个运行的实体,都有自己的地址空间,并占用一定的系统资源. .进程管理的作用 判断服务器健康状态 查看系统中所有进程 杀死进程 .查看系统中所有进程 [root@localhost ~]# ps aux #查看系统中所有进程,使用BSD操作系统格式 [roo…
启动jmx server 和jmx client,通过jconsole进入jmx server 然后通过其中远程进程,进入jmx client: 发现,两者可用的tab页不同, MBean的数量类型也不同: 如何理解呢?其实原因就是两者的MBeanServer不同, 前者是jmx自带的,后者是我new出来的. 访问JMImplementation 看看: ObjectName jmxname = new ObjectName("JMImplementation:type=MBeanServerD…
今天遇到一个问题: 执行bat,关闭jmx的时候,由于程序关闭之后又去连接了一次,cmd窗口报错,类似: 2013-7-11 15:58:05 ClientCommunicatorAdmin restart警告: Failed to restart: java.io.IOException: Failed to get a RMI stub: javax.naming.ServiceUnavailableException [Root exception is java.rmi.ConnectE…