首先我对抄袭别人帖子的XX的几点建议!!!
1、复制粘贴没有错,但请不要复制完了还给自己打上原创的标签,你还要不要B脸了
2、麻烦亲复制张贴之前,先自己学习学习专业知识,了解一下基本理论行不行。有点最基本的专业知识,对你没啥坏处。你为了掩盖自己的复制粘贴之过,就掐头去尾,狗尾续貂,断章取义的胡乱拼凑。最起码自己先明白原著哪里需要勘误一下,别人写的的是关于其中哪一方面的,是否哪些方面要备注一下,防止误导别人等待之类的,也算是对原创的尊重,也是对自己能力的提升。
3、麻烦亲复制粘贴过来之后,能否有机会对帖子中的方法进行实机验证一下,现在虚拟机很方便,没有生产环境也可以,再说了,生产环境也不允许你做实验。确认方法确实可用,亦或者给出测试方法也行,但请不要只知道复制粘贴,却不知道复制的是啥,粘贴的又是什么!!!请不要用你无聊的时间来浪费其他人的时间。因为你的无聊,有可能会误导看到你帖子的人的宝贵时间,麻烦请尊重技术,尊重实践。
Tomca7非安装版关于如何修改jvm参数的几点说明
1、确认自己的tomcat7部署环境,分windows和linux环境。
windows环境的tomcat7修改tomcat目录下/bin/下的catalina.bat文件,因为windows下的批处理文件后缀为bat
linux环境的tomcat7修改tomcat目录下/bin下的catalina.sh文件,因为linux下的shell脚本后缀常用sh。
2、修改参数时参照参数说明文档,最好看官方文档按照自己部署环境的实际情况进行修改,不是所有部署环境都适用同一份参数。因为软硬件性能不同,参数也要相应调整。没有一份调优文档可以万能通用的,否则运维工程师要下岗了。
3、调整之前记得对原配置文件进行备份,调优之后也要对新配置文件进行备份。
4、调优之前查看一下当前jvm实际使用情况,调优之后再查看一下jvm当前运行参数。便宜对比验证调整之后的参数是否生效。
调整jvm参数的步骤(适用windows环境,已通过真机测试。linux环境目前没有测试,仅供参考)
1、进入tomca7安装目录/bin/下面
windows系统修改catalina.bat
linux系统修改catalina.sh
2、使用文本编辑器打开catalina.bat
查找rem ----- Execute The Requested Command ----------------------------------------此行内容
然后在此行内容下面另起一行添加如下内容,并保存退出。
说明windows中需要加set关键字。这部分我就是踩坑过来的。
set "JAVA_OPTS=-server -Xms2048m -Xmx2048m -Xss512m -XX:PerSize=1024m -XX:MaxPerSize=2048m -Xss1024k"
Linux环境中添加模板如下
JAVA_OPTS="-server -Xms2048m -Xmx2048m -Xss512m -XX:PerSize=1024m -XX:MaxPerSize=2048m -Xss1024k"
其中的各项参数可根据机器的实际内存和cpu情况自行参照调整
-server:一定要作为第一个参数,在多个CPU时性能佳
-Xms:初始Heap大小,使用的最小内存,cpu性能高时此值应设的大一些
-Xmx:Java heap最大值,使用的最大内存
上面两个值是分配JVM的最小和最大内存,取决于硬件物理内存的大小,建议均设为物理内存的一半。
-XX:PermSize:设定内存的永久保存区域
-XX:MaxPermSize:设定最大内存的永久保存区域
-XX:MaxNewSize:
-Xss 15120 这使得JBoss每增加一个线程(thread)就会立即消耗15M内存,而最佳值应该是128K,默认值好像是512k.
+XX:AggressiveHeap 会使得 Xms没有意义。这个参数让jvm忽略Xmx参数,疯狂地吃完一个G物理内存,再吃尽一个G的swap。
-Xss:每个线程的Stack大小
-verbose:gc 现实垃圾收集信息
-Xloggc:gc.log 指定垃圾收集日志文件
-Xmn:young generation的heap大小,一般设置为Xmx的3、4分之一
-XX:+UseParNewGC :缩短minor收集的时间
-XX:+UseConcMarkSweepGC :缩短major收集的时间
提示:此选项在Heap Size 比较大而且Major收集时间较长的情况下使用更合适。
3、重启服务参数生效。仅限于使用startup.bat方式启动,如果需要使用windows服务方式启动,则需要修改server.bat文件。
tomcat安装目录下/bin/
执行startup.bat
4、检查jvm当前运行情况,对比jvm参数修改是否生效。
查看jvm性能参数需要访问tomcat7后台管理页面,需要添加管理员账号。
进入tomcat7目录.\conf\修改tomcat-user.xml
查找此行,给此行上面一行添加如下参数保存并退出
然后重启服务,在部署tomcat的服务器上用浏览器访问http://127.0.0.1:8080/manager/status,使用上面配置的自定义用户名和密码登录。
然后点击Server Status菜单进入jvm参数界面
查看JVM的各项指标,Free memory 表示可用内存,total memory表示总内存大小,Max memory表示最大内存大小。
主要查看总大小和最大大小是否为上面jvm参数修改的参数即可。如果符合修改的参数大小,则表示修改的参数已生效,如果不是则请检查catalina.bat的JAVA_OPTS参数是否修改正确。并检查日志是否报错。具体情况再具体处理。
声明:以上文字中涉及jvm参数的的说明都是我查找网上资料整理的,感谢作者给予的支持。修改的方法是我自己查找资料并进行实机测试,然后一步一步踩坑整理出来的,算是半个原创,因为我查阅资料都没有对windows环境中的修改部分做出正确的说明。