- 浏览: 1064503 次
- 性别:
- 来自: 南京
文章分类
- 全部博客 (501)
- dwr (6)
- javascript (84)
- oracle (66)
- jsp/servlet (18)
- ant (3)
- 基础知识 (12)
- EXT (10)
- My SQL (10)
- java (71)
- spring (37)
- 学习的对象 (2)
- Linux (24)
- 面试 (1)
- HTML/CSS (11)
- tomcat (11)
- 收藏夹 (2)
- Power Designer (2)
- struts.xml配置文件 (1)
- sturts2 (3)
- myeclipse (8)
- eclipse (7)
- Maven (34)
- SVN (3)
- SAP JCO (2)
- JBOSS (11)
- webservice (8)
- word (1)
- 敏捷开发 (1)
- sybase (4)
- Nexus (3)
- EhCache (3)
- log4j (3)
- Cookie (4)
- Session (4)
- CXF (7)
- AXIS (2)
- SSO (1)
- LDAP (1)
- velocity (2)
- Jquery (5)
- redis (2)
- http (4)
- dojo (1)
- Linux资源监控软件mnon的安装与运用 (1)
- notepad++ (1)
- EA (1)
- UML (1)
- JasperReports (1)
- 权限 (0)
- freemarker (4)
- Spring MVC (1)
- JMS (1)
- activeMQ (1)
- hession (3)
- 安全 (1)
- ibatis (2)
- log (1)
- nginx (1)
最新评论
-
winhbb:
我刚好遇到了一个问题(在可以依赖注入的场合有效):有两个模块A ...
解决Maven项目相互依赖/循环依赖/双向依赖的问题 -
nanjiwubing123:
long3ok 写道你好 XmlOutputFormatter ...
用XStream转换复杂XML -
zhoujianboy:
另外一个方法实现eclipse tomcat 热部署:http ...
eclipse下实现maven项目在tomcat容器热部署方法 -
long3ok:
你好 XmlOutputFormatter 请问这个类是在什么 ...
用XStream转换复杂XML -
ganbo:
总结的好,文章给力。
解决Maven项目相互依赖/循环依赖/双向依赖的问题
VisualVm是java出品的一款JVM监控工具,能实时获取CPU、内存、线程等多方面的信息,并给出图形化的展示,对我们分析JVM的性能提供很大的帮助。做压力测试的时候,我一般使用siege来施压,用visualvm来监控机器在受压下的状况。visualvm已经发布在jdk1.6中,bin目录下的jvisualvm.exe是也。当然也可以在http://visualvm.java.net/获得功能更全的visualvm,并且支持多国语言。visualvm是建立在netbeans的架构上的,并且向netbeans一样有很多插件可以使用。本文不是介绍visualvm,而是介绍下远程tomcat如何配置才能使用visualvm对他进行监控。
1、visualvm通过可以jmx连接远程的服务器,要想监控远程tomcat,必须在tomcat启动时同时开启jmx支持,设置端口以及授权信息等。修改tomcatbin目录下的catalina.sh中的JAVA_OPTS选项,如下所示:
JAVA_OPTS="-Xms4096m -Xmx4096m -Xmn1G -Xss512K -XX:MaxPermSize=200M -Djava.rmi.server.hostname=10.0.0.152 -Dcom.sun.management.jmxremote.port=8999 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -XX:ParallelGCThreads=4 -XX:+UseConcMarkSweepGC -XX:CMSFullGCsBeforeCompaction=3 -XX:+UseCMSCompactAtFullCollection"
其中hostname以及jmxremote相关的项就是设置JMX的,如上所示,端口号是8999,并没有开启ssl和授权。
如果把jmx的信息配置在JAVA_OPTS中会引起一个问题,那就是tomcat关闭的时候总是提示 端口8999被占用而关闭不了。修改一下,把jmx配置在CATALINA_OPTS就可以了,如下所示:
CATALINA_OPTS="$CATALINA_OPTS
-Djava.rmi.server.hostname=10.0.0.152
-Dcom.sun.management.jmxremote.port=8999
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false";
jvm监控宝具--Visual VM
http://aidiyuxin.iteye.com/blog/544945
java性能调优工具介绍-Jstatd
1、visualvm通过可以jmx连接远程的服务器,要想监控远程tomcat,必须在tomcat启动时同时开启jmx支持,设置端口以及授权信息等。修改tomcatbin目录下的catalina.sh中的JAVA_OPTS选项,如下所示:
JAVA_OPTS="-Xms4096m -Xmx4096m -Xmn1G -Xss512K -XX:MaxPermSize=200M -Djava.rmi.server.hostname=10.0.0.152 -Dcom.sun.management.jmxremote.port=8999 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -XX:ParallelGCThreads=4 -XX:+UseConcMarkSweepGC -XX:CMSFullGCsBeforeCompaction=3 -XX:+UseCMSCompactAtFullCollection"
其中hostname以及jmxremote相关的项就是设置JMX的,如上所示,端口号是8999,并没有开启ssl和授权。
如果把jmx的信息配置在JAVA_OPTS中会引起一个问题,那就是tomcat关闭的时候总是提示 端口8999被占用而关闭不了。修改一下,把jmx配置在CATALINA_OPTS就可以了,如下所示:
CATALINA_OPTS="$CATALINA_OPTS
-Djava.rmi.server.hostname=10.0.0.152
-Dcom.sun.management.jmxremote.port=8999
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false";
jvm监控宝具--Visual VM
http://aidiyuxin.iteye.com/blog/544945
java性能调优工具介绍-Jstatd
- VisualVM_入门指南.pdf (1.6 MB)
- 下载次数: 13
发表评论
-
个人草稿使用
2017-08-19 09:02 0深入理解JVM: http://www.cnblogs.co ... -
Thread.setDaemon详解
2015-04-24 21:31 904java中线程分为两种类型:用户线程和守护线程。通过Threa ... -
怎么使用 ConcurrentHashMap 才能是线程安全的?
2015-04-13 11:54 1508public class test { public ... -
21,tomcat关闭钩子
2014-12-31 10:36 727在很多环境下,在关闭应用程序的时候需要做一些清理工作。问题在于 ... -
Java NIO使用及原理分析 (一) 【转载】
2014-10-24 00:04 490【转载】: http://blog.csdn.net/wuxi ... -
Java 两个集合取交集
2014-10-14 21:16 3135public static Set intersectionS ... -
Calendar类roll和add的区别
2014-10-10 22:28 495import java.text.SimpleDateForm ... -
Gson通过借助TypeToken获取泛型参数的类型的方法
2014-09-30 00:26 631[size=medium]最近在使用Goo ... -
HashMap的遍历效率讨论
2014-09-27 20:41 834经常遇到对HashMap中的key和value值对的遍历操作, ... -
Java 泛型
2014-06-26 12:44 858关键字说明 ? 通配符类型 <? extends T&g ... -
Java泛型集合的理解
2014-06-26 00:05 508[size=medium]什么是泛型? 泛型(Generic ... -
关于java字节码框架ASM的学习
2014-06-19 19:22 891一、什么是ASM ASM是一个java字节码操纵框架, ... -
Java动态代理详解
2014-06-19 17:41 862Java动态代理详解: http: ... -
Java内存,字符串文章收集
2014-06-18 16:24 733java--String常量池问题的几个例子 . http:/ ... -
Java内存解析
2014-06-18 11:48 779栈、堆、常量池等虽同 ... -
Java的堆与非堆内存
2014-01-07 10:59 720堆(Heap)和非堆(Non-heap)内存 按照官方的说法: ... -
JMX 资料收集
2014-01-07 10:53 460JavaSky的专栏 http://blog.csdn.net ... -
JAVA 注解示例 详解
2013-11-12 09:36 825注解(Annotation) 为我们在代码中天界信息提供了 ... -
Java 泛型详解
2013-11-11 22:35 822http://www.360doc.com/content/1 ... -
Java中的Enum的使用与分析
2013-11-09 12:49 822enum枚举类型:在实际问 ...
相关推荐
《Monkey老师的JVM调优深度解析》 在Java开发领域,JVM(Java Virtual Machine)是每一个程序员都需要深入了解的关键组成部分。Monkey老师的JVM调优课程,无疑为我们提供了一个宝贵的平台,来深入探究JVM的工作原理...
在实际应用中,我们常常使用一些工具来辅助JVM调优,如JConsole、VisualVM和JProfiler。这些工具可以实时监控JVM的状态,提供内存分析、线程分析和CPU性能分析等功能。例如,JConsole可以帮助我们查看和调整JVM的...
【JVM调优实战经验】 在Java开发中,JVM(Java Virtual Machine)的调优是提高应用程序性能的关键环节。JVM调优涉及到对内存管理、垃圾回收机制以及相关参数的调整,以优化应用程序的运行效率和稳定性。本文将深入...
在这篇文章中,我们将探讨 JVM 调优的重要性和各种调优方式。 首先,需要注意的是,在对 JVM 内存调优的时候不能只看操作系统级别 Java 进程所占用的内存,因为 GC 过后这个值是不会变化的。因此,在内存调优的时候...
在Java开发领域,JVM(Java Virtual Machine)是运行所有Java应用程序的...对于"jvm调优示例"中的程序,可以通过分析其运行情况,配合JVM提供的工具,如VisualVM或JProfiler,来定位和解决问题,实现更高效的运行效果。
JVM调优主要关注内存分配、垃圾收集策略以及类加载机制。常见的调优参数包括: - `-Xms` 和 `-Xmx`:设置堆内存的初始大小和最大大小。 - `-XX:NewRatio` 和 `-XX:SurvivorRatio`:控制新生代和Survivor区的比例。 ...
JVM调优是一项重要的技术实践,旨在优化Java应用的性能,减少内存消耗,提高响应速度,确保系统的稳定运行。本示例“JVM调优示例2”将聚焦于如何通过调整JVM参数来优化Java应用。 首先,我们来理解JVM调优的关键...
总结来说,JVM调优涵盖了内存管理、垃圾收集、类加载和线程管理等多个方面。通过深入理解JVM的工作原理,结合实际应用需求,调整合适的参数,我们可以实现更高效、稳定的Java应用运行环境。这个“JVM调优详解学习...
《深入解析JVM调优与监控》 在Java开发领域,JVM(Java Virtual Machine)是运行Java程序的核心,它的性能直接影响着应用的效率和稳定性。JVM调优是优化Java应用程序性能的关键环节,而"jvm-monitor"则提供了一种...
总的来说,JVM调优是一个综合性的过程,涉及到内存管理、垃圾收集、线程调度等多个方面。通过不断的实践和学习,我们可以更好地理解和优化Java应用在JVM上的运行效率。"JVM调优测试-jvmDemo"这个项目应该就是提供了...
JVM调优通常涉及到内存配置、GC策略选择以及监控工具的使用,以便确保应用的高效稳定运行。 在Java世界中,GC的主要目标是自动管理应用程序的内存,通过自动回收不再使用的对象来避免内存泄漏。GC的工作机制包括...
Java问题定位技术,特别是JVM调优,是Java开发者必须掌握的重要技能。JVM(Java虚拟机)是Java程序运行的基础,它负责解释执行字节码,并管理内存、线程和类加载等关键任务。调优JVM可以提高应用程序的性能、稳定性...
JVM调优涉及到调整一系列参数,以优化应用程序的性能,包括内存分配、垃圾收集策略、线程管理以及编译器优化等。 【描述】"Jvm调优练习-jvm-tuning" 暗示了这个压缩包可能包含一系列实验或教程,帮助用户通过实际...
本文将详细介绍两款常用的JVM调优工具——JConsole和VisualVM。 首先,JConsole是Java 5及更高版本JDK自带的一款监控和管理控制台。它基于JMX(Java Management Extensions),提供了图形用户界面来监控JVM中的内存...
### Java-JVM调优总结 #### 一、引言 在现代软件开发中,Java 作为一种广泛使用的编程语言,其应用程序的性能优化至关重要。而 JVM(Java Virtual Machine)作为 Java 程序运行的基础环境,对其进行合理的调优可以...
总的来说,JVM调优是一个复杂而细致的过程,需要结合应用的特性和实际运行情况,通过调整内存分配、选择合适的垃圾收集器、监控和分析GC行为,以及优化服务器配置,来达到提升整体性能的目标。这个过程可能需要反复...
10. 监控与诊断工具:如VisualVM、JConsole、JMX等可以帮助我们实时监控JVM状态,找出性能瓶颈。 总结,Java JVM内存分配和调优是一项复杂的任务,需要结合实际应用的需求和性能指标来调整。通过理解JVM内存模型,...
在实际操作中,JVM调优涉及参数调整,如堆内存大小(`-Xms`和`-Xmx`)、新生代与老年代的比例(`-XX:NewRatio`)、GC日志设置(`-Xlog:gc*`)等,需要结合监控工具(如VisualVM、JConsole、JFR等)进行观察和调整,...
### JVM调优基础知识点 #### 一、JVM基础知识 JVM(Java Virtual Machine)是运行Java程序的基础,它能够执行字节码(Bytecode),并提供了一个与平台无关的运行环境。对于JVM的基本理解有助于更好地进行调优工作...
JVM调优是一项关键技能,它涉及到调整JVM的配置参数,以达到最佳的程序运行效率,防止内存泄漏,以及确保应用程序的稳定性和响应速度。以下是一些关于JVM调优的重要知识点: 1. **内存模型**:JVM内存分为堆内存...