- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
使用visualvm工具进行tomcat功能调优和功能监控
1、JDK内存优化
???依据服务器物理内容情况配置相关参数优化tomcat功能。当应用程序需要的内存超出堆的最大值时虚拟机就会提示内存溢出,并且导致应用服务崩溃。因而一般建议堆的最大值设置为可用内存的最大值的80%。 Tomcat默认可以使用的内存为128MB,在较大型的应用项目中,这点内存是不够的,需要调大.
Tomcat默认可以使用的内存为128MB,Windows下,在文件/bin/catalina.bat,Unix下,在文件/bin/catalina.sh的前面,添加如下设置: JAVA_OPTS=’-Xms【初始化内存大小】 -Xmx【可以使用的最大内存】 -XX:PermSize=64M -XX:MaxPermSize=128m’ 需要把几个参数值调大。例如: JAVA_OPTS=’-Xms256m -Xmx512m’ 表示初始化内存为256MB,可以使用的最大内存为512MB。
??参数详解
-server? 启用jdk 的 server 版;
-Xms??? java虚拟机初始化时的最小内存;
-Xmx??? java虚拟机可使用的最大内存;
-XX:PermSize??? 内存永久保留区域
-XX:MaxPermSize?? 内存最大永久保留区域
-Xmn??? jvm最小内存
32G 内存配置示例:
JAVA_OPTS=$JAVA_OPTS? -Xms10g -Xmx10g -XX:PermSize=1g -XX:MaxPermSize=2g -Xshare:off -Xmn1024m
2、tomcat线程优化
在tomcat配置文件server.xml中的配置中,和连接数相关的参数有:
maxThreads:?Tomcat使用线程来处理接收的每个恳求。这个值表示Tomcat可创建的最大的线程数。默认值150。
acceptCount:?指定当全部可以使用的处理恳求的线程数都被使用时,可以放处处理队列中的恳求数,超过这个数的恳求将不予处理。默认值10。
minSpareThreads:?Tomcat初始化时创建的线程数。默认值25。
maxSpareThreads:?一旦创建的线程超过这个值,Tomcat就会关闭不再需要的socket线程。默认值75。
enableLookups:?能否反查域名,默认值为true。为了提高处理力量,应设置为false
connnectionTimeout:?网络连接超时,默认值60000,单位:毫秒。设置为0表示永不超时,这样设置有隐患的。通常可设置为30000毫秒。
maxKeepAliveRequests: 保持恳求数量,默认值100。 bufferSize: 输入流缓冲大小,默认值2048 bytes。
compression: 压缩传输,取值on/off/force,默认值off。 其中和最大连接数相关的参数为maxThreads和acceptCount。假如要加大并发连接数,应同时加大这两个参数。
32G 内存配置示例:
Connector port=8080 protocol=HTTP/1.1
???????????????connectionTimeout=20000 maxThreads=1000 minSpareThreads=60 maxSpareThreads=600? acceptCount=120?
???????????????redirectPort=8443 URIEncoding=utf-8/
使用visualvm功能监控
1、什么是VisualVM
visualvm是jdk自带的一款监控工具。它供应了一个可视界面,用于查看 Java 虚拟机上运转的基于 Java 技术的程序的具体信息。VisualVM 对 Java Development Kit (JDK) 工具所检索的 JVM 软件相关数据进行组织,并通过一种使您可以快速查看有关多个 Java 应用程序的数据的方式供应当信息。您可以查看本地应用程序以及近程主机上运转的应用程序的相关数据
2、如何安装
在jkd bin名目下有一个jvisualvm.exe文件 双击就可以使用
3、如何使用jvisualvm
1、配置JMX管理tomcat:
set JAVA_OPTS=-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9008 -Dcom.sun.management.jmxremote.authenticate=false -??? Dcom.sun.management.jmxremote.ssl=false
2、重启tomcat即可
3
文档评论(0)