tomcat性能调优和性能监控(visualvm)

 

tomcat服务器优化

 

一、JDK内存优化java

   根据服务器物理内容状况配置相关参数优化tomcat性能。当应用程序须要的内存超出堆的最大值时虚拟机就会提示内存溢出,而且致使应用服务崩溃。所以通常建议堆的最大值设置为可用内存的最大值的80%。 Tomcat默承认以使用的内存为128MB,在较大型的应用项目中,这点内存是不够的,须要调大.tomcat

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

 

二、tomcat线程优化jvm

tomcat配置文件server.xml中的配置中,和链接数相关的参数有:socket

maxThreads: Tomcat使用线程来处理接收的每一个请求。这个值表示Tomcat可建立的最大的线程数。默认值150。ide

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性能监控

一、什么是VisualVM

FastDFS是jdk自带的一款监控工具。它提供了一个可视界面,用于查看 Java 虚拟机上运行的基于 Java 技术的程序的详细信息。VisualVM 对 Java Development Kit (JDK) 工具所检索的 JVM 软件相关数据进行组织,并经过一种使您能够快速查看有关多个 Java 应用程序的数据的方式提供该信息。您能够查看本地应用程序以及远程主机上运行的应用程序的相关数据

二、如何安装

在jkd bin目录下有一个jvisualvm.exe文件 双击就可使用

三、如何使用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

二、重启tomcat便可

三、双击jvisualvm.exe 添加服务器IP地址,添加须要监控jmx端口便可

效果以下:

ss

相关文章
相关标签/搜索