该优化针对Linux X86_X64环境
1. Tomcat优化其实就是对server.xml优化(开户线程池,调整http connector参数)
搜索【<Executor name="tomcatThreadPool"】,开启并调整为
<Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
maxThreads="1000" maxIdleTime="60000"
minSpareThreads="20"/>
搜索【port="8080"】,调整为
<Connector executor="tomcatThreadPool" port="8080" //开启线程池
protocol="org.apache.coyote.http11.Http11AprProtocol"//开启Apr协议,需要安装Apr支持
maxHttpHeaderSize="8192" maxThreads="1000" processorCache="1000" acceptCount="1000"
minSpareThreads="100"
acceptorThreadCount="8" URIEncoding="UTF-8"
enableLookups="false" redirectPort="8443"//关闭反向查询
connectionTimeout="120000" keepAliveTimeout="120000"
maxKeepAliveRequests="65535" disableUploadTimeout="true"
compression="on" compressionMinSize="4096"//开启静态文件压缩
noCompressionUserAgents="gozilla, traviata"//开启静态文件压缩
compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain,application/json,application/x-javascript " //开启静态文件压缩
/>
2. 对catalina.sh优化JVM
打开 Tomcat路径\bin\ catalina.sh,在最顶部加入,红色部分请根据实际情况调整
JAVA_OPTS="-server -showversion -Xms12g -Xmx12g -XX:PermSize=256m -XX:MaxPermSize=256m"
JAVA_OPTS="$JAVA_OPTS -d64 -XX:CICompilerCount=8 -XX:+UseCompressedOops"
JAVA_OPTS="$JAVA_OPTS -XX:SurvivorRatio=4 -XX:TargetSurvivorRatio=90"
JAVA_OPTS="$JAVA_OPTS -XX:ReservedCodeCacheSize=256m -XX:-UseAdaptiveSizePolicy"
JAVA_OPTS="$JAVA_OPTS -Duser.timezone=Asia/Shanghai -XX:-DontCompileHugeMethods"
JAVA_OPTS="$JAVA_OPTS -Xss256k -XX:+AggressiveOpts -XX:+UseBiasedLocking"
JAVA_OPTS="$JAVA_OPTS -XX:MaxTenuringThreshold=31 -XX:+CMSParallelRemarkEnabled "
JAVA_OPTS="$JAVA_OPTS -XX:+UseCMSCompactAtFullCollection -XX:LargePageSizeInBytes=256m -XX:+UseFastAccessorMethods"
JAVA_OPTS="$JAVA_OPTS -XX:+UseCMSInitiatingOccupancyOnly -Djava.awt.headless=true"
JAVA_OPTS="$JAVA_OPTS -XX:+UseGCOverheadLimit -XX:AllocatePrefetchDistance=256 -XX:AllocatePrefetchStyle=1"
JAVA_OPTS="$JAVA_OPTS -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:MaxGCPauseMillis=200"
【注意】
1.-Xms=-Xmx=服务器内存*70%,如部署tomcat,jboss在同一台服务器-Xms=-Xmx=服务器内存*80%*1/4
2. 添加的参数建议要自己明白是什么意思,可以参考JVM参数列表
相关推荐
JVM优化:生产环境参数实例及分析;优化JVM参数提高eclipse运行速度;Tomcat JVM优化一例;linux下Nginx+tomcat整合的安装与配置;Memcached安装;memcache集群配置;JMS安装;JMS集群配置;Nginx反向代理;防火墙...
主要介绍了tomcat性能优化方式简单整理,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
该文档为在性能测试过程中对一些中间件的调优,如对tomcat的JVM、连接器、线程数等,中创中间件的JVM、连接数、日志级别调整,weblogic的JVM、关闭访问日志等。 同时包括数据库连接池的调优,Apache集群、oracle参数...
JVM8全方位理解、实现linux下和window下对jar、idea、tomcat等应用程序的jvm的实战操作
该文档深入讲解硬件、系统、中间件、数据库、网络、程序、架构多方面综合考虑性能问题及解决方案
- Tomcat调优 - 数据库调优 10. 安全: - XSS、CSRF、SQL注入等常见安全漏洞 - Spring Security安全框架 以上是Java后端必会的所有技能,掌握这些技能可以帮助开发人员在Java后端开发领域更加得心应手。
├─补充1:拔高课程(Redis3.0持久化、集群、MySQL5.6优化、Tomcat7优化) │ │ 打开必读.txt │ │ │ ├─课前资料 │ │ ├─MySQL5.6优化 │ │ │ MySql5.6性能优化.docx │ │ │ │ │ ├─Redis集群 │ ...
JavaSE核心 异常处理、多线程基础、IO系统、网络编程、Java反射机制、JVM性能调优(JVM内存结构剖析、GC分析及调优、JVM内存参数优化)、Java泛型、JDK新特性 熟练掌握JavaSE核心内容,特别是IO和多线程;...
记录java.lang.OutOfMemoryError:Java heap space的情况 文章内容: 一.问题描述+原因分析+解决方案 二.JVM调优说明 三.Tomcat添加到jvisualvm监控
本藏馆主要珍藏Java体系核心技术书籍: (,,)(,,,,,) 上古单体时代 分布式朝代 微服务纪元 云原生前沿 DevOps 软件工程思想 编码艺术Java核心基石java技术基本功并发编程JVM专栏篇1.Java调优实战 so easy~...
SVN/IDEA开发⼯具 分布式版本管理⼯具Git与Github Mysql⾼级 Mycat实现MySQL的分布式、分库分表、读写分离 Nginx反向代理、负载均衡、动静分离 JVM内存模型、参数调优 JUC线程⾼级 分布式架构注册中⼼Zookeeper 虚拟...
性能调优、线上问题排查 类加载机制详解 垃圾回收机制 垃圾回收器、垃圾回收算法 :jack-o-lantern:拓展知识 :open_book:Java容器 :memo:多线程 线程状态转换与通信机制 线程同步与互斥 线程池知识点 常见的JUC工具类...
线上问题调优(虚拟机,tomcat) 面试指南 工具 Git Docker 其他 权限控制(设计、shiro) Java学习资源 截图 Java书籍推荐 实战项目推荐 小心翼翼的告诉你,上面的资源当中就有很多企业级项目,没有项目一点不用怕...