JAVA应用服务器
weblogic
websphere
tomcat
resin(百度,去哪网,搜狗,人人,互动百科)
jboss
resin官网:www.caucho.com
jvm的调优:
1 JAM内存
2 选择一个对业务好的回收器,知道各个回收器原理。
最终目的是降低full gc的频率。full gc会导致应用的暂停,什么业务也不会处理。
只有等full gc处理完成才能处理。
1 jvm的调优
最大堆内存的大小XmX
初始堆内存的大小Xms
年轻代的内存大小Xmn
持久代的内存大小XX:PermSize
修改内存等 JVM相关配置
bin/catalina.sh
JAVA_OPTS="-server -XX:PermSize=512M -XX:MaxPermSize=1024m -Xms2048m -Xmx2048m"
-server:启用 JDK的 server 版本;
-Xms:Java虚拟机初始化时堆的最小内存,一般与 Xmx配置为相同值,这样的好处是GC不必再为扩展内存空间而消耗性能;
-Xmx:Java虚拟机可使用堆的最大内存;
-XX:PermSize:Java虚拟机永久代大小;
-XX:MaxPermSize:Java虚拟机永久代大小最大值;
垃圾回收器。
配置优化,线程池的设置
https的
<Connector port="8080" protocol="HTTP/1.1" URIEncoding="UTF-8" maxThreads="1000" 最大线程数 minSpareThreads="100" 初始化时创建的线程数 acceptCount="1000" 允许的最大连接数,应大于等于maxProcessors,默认值为100 maxSpareThreads="500" 一旦创建线程数超过这个值,tomcat就会关闭不需要的socket线程。 maxConnections="1000" connectionTimeout="30000" 设置为0表示永不超时,这样设置有隐患的。通常可设置为30000毫秒 maxHttpHeaderSize="8192" tcpNoDelay="true" maxProcessors="1000" 最大连接线程数,即:并发处理的最大请求数,默认值为75 minProcessors="5" 最小空闲连接线程数,用于提高系统处理性能,默认值为10 uesURIValidationHack="false" compression="on" 开启压缩 compressionMinSize="2048" 文件超过多大后在压缩。 compressableMimeType="test/html,text/xml,text/javascript,text/ccs,test/plain" SSLEnabled="true" scheme="https" secure="ture" clientAuth="false" sslProtocol="TLS" keystoreFile="d:/tomcat2/conf/shnlap93.jks" keystorePass="aaaaa" disableUploadTimeout="true" 打开下载超时 redirectPort="8443" enableLookups="false" 关闭DNS查询,是否反查域名,取值为:true或false。为了提高处理能力,应设置为false />
其中和最大连接数相关的参数为maxProcessors和acceptCount。如果要加大并发连接数,应同时加大这两个参数。
bin/catalina.sh
看详细东西,看jvm各种参数
安装windows版本的
http://download.oracle.com/otn-pub/java/jdk/8u171-b11/512cd62ec5174c3487ac17c61aaa89e8/jdk-8u171-windows-x64.exe
找到Java/bin下的exe程序文档,jconsole.exe 和
正常情况下,生产有jvm参数
这里测试在vi catalina.sh添加,重启
CATALINA_OPTS="$CATALINA_OPTS
-Dcom.sum.management.jmxremote
-Dcom.sum.management.jmxremote.port=123456 -Dcom.sum.management.jmxremote.authenticate=false
-Dcom.sum.management.jmxremote.ssl=false -Djava.rmi.server.hostname=192.168.133.3"
jconsole.exe
远程进程:192.168.133.3:123456 连接
查看内存:选择 执行GC
jvisualvm.exe
添加远程主机或者JMX连接
192.168.133.3:123456
可以在概述下查看jvm参数和系统属性
监视:
执行垃圾回收。
生产下用zabbix中的Java gateway也可以监视。
https://www.cnblogs.com/crysmile/p/7071103.html
www.zabbix.com
cmdline-jmxclient