博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
tomcat 调优
阅读量:6856 次
发布时间:2019-06-26

本文共 2449 字,大约阅读时间需要 8 分钟。

   一。配置  server.xml  

 

    配置说明:    优化步骤分为 :线程池优化参数优化 、连接器参数优化   (如果在 线程池参数 可以在连接器 中  给定参数 。就不需要 打开  <Executor  />  标签 )

              1.  线程池参数优化   

          tomcat  默认  线程 配置是      maxThreads="150" minSpareThreads="4"  即 支持最大线程数 150   最小 线程 4

    
<Executor name=
"tomcatThreadPool" 
namePrefix=
"catalina-exec-"
        
maxThreads=
"150" 
minSpareThreads=
"4"
/>
    
-->
    
<Executor name=
"tomcatThreadPool" 
namePrefix=
"catalina-exec-"
    
maxThreads=
"1000"
    
minSpareThreads=
"100"
    
maxIdleTime=
"60000"
    
prestartminSpareThreads = 
"true"
    
maxQueueSize = 
"100"
    
className=
"org.apache.catalina.core.StandardThreadExecutor" 
/>
 
   连接器配置 
 
<Connector executor=
"tomcatThreadPool" 
URIEncoding=
"utf-8"
           
port=
"8080" 
protocol=
"org.apache.coyote.http11.Http11Nio2Protocol"
           
enableLookups=
"false"  //  消除DNS查询对性能的影响我们可以关闭DNS查询。
           
maxConnections=
"2000"
           
useURIValidationHack=
"false"
           
keepAliveTimeout=
"60000"  //  为网络连接超时时间毫秒数
           
connectionTimeout=
"20000"          //  connectionTimeout:网络连接超时 。通常可设置为30000毫秒。 
              maxThreads=
"1000"   // 即最大并发数
                                     acceptCount="100"  // 当 并发数超过   maxthreads 设置的值 时 。后续的请求   放到队列中  。如果   如果队列满了 泽进行 拒绝 连接 
              minSpareThreads=
"100"  
              maxSpareThreads=
"2000"
             minProcessors=
"100"
             maxProcessors=
"1000"
compression="on"  //  压缩   是否开启压缩GZIP on开启 off 关闭 forde:所有情况下都压缩               disableUploadTimeout="true"  //
              
tcpNoDelay=
"true"  如果为true,服务器socket会设置TCP_NO_DELAY选项,在大多数情况下可以提高性能。缺省情况下设为true。
           
redirectPort=
"8443" 
/>
 
     3. 禁用 ajp 协议 
          注释tomcat中server.xml中<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" /> 即可。
 
Windows  平台 直接 打开   catalina.bat
set JAVA_OPTS=-Dfile.encoding=UTF-8 -server -Xms1024m -Xmx2048m -XX:NewSize=512m -XX:MaxNewSize=1024m -XX:PermSize=256m -XX:MaxPermSize=512m -XX:MaxTenuringThreshold=10 -XX:NewRatio=2 -XX:+DisableExplicitGC
 Linux  平台    打开   catalina.sh  修改 
JAVA_OPTS="-Dfile.encoding=UTF-8 -server -Xms1024m -Xmx2048m -XX:NewSize=512m -XX:MaxNewSize=1024m -XX:PermSize=256m -XX:MaxPermSize=512m -XX:MaxTenuringThreshold=10 -XX:NewRatio=2 -XX:+DisableExplicitGC"
 
参数说明 :
 
#-Dfile.encoding:默认文件编码#-Xms512m  设置JVM的最小内存为512m,此值可以设置与-Xmx相同以此避免每次垃圾回收完成后JVM重新分配内存。 #-Xmx1024  设置JVM的最大可用内存#-XX:NewSize  设置年轻代大小#-XX:MaxNewSize 设置年轻代最大内存大小#-XX:PermSize  设置永久代大小#-XX:MaxPermSize 设置永久代最大内存#-XX:NewRatio=2 设置年轻代与老年代的比值 2 :表示年轻代与老年代的比值是1:2#-XX:MaxTenuringThreshold  这种垃圾的最大年龄,默认是15 。 0:表示年轻代不经过Survivor区直接进入老年代,对于老年代较多的应用,设置为0可以提高效率。如果该值较大表示年轻代的对象会在Survivor区进行多次复制,以此增加对象在年轻代的存活时间,增加在年轻代被回收的概率。#XX:+DisableExplicitGC 应用程序将忽略收到调用GC的代码。及System.GC()是一个空调用。
 
查看 tomcat  连接数  
netstat 
–nat | 
grep  
8080
 
 

转载于:https://www.cnblogs.com/yuruyi/p/10242079.html

你可能感兴趣的文章
【Web动画】SVG 线条动画入门
查看>>
ftp服务器搭建(离线安装vsftpd),配置
查看>>
RequestMapping_请求方式
查看>>
bootstrap-datetimepicker时间控件
查看>>
第三十九天
查看>>
linux内核驱动module_init解析(2)
查看>>
代码优化中 主窗口 问题 解决
查看>>
POJ1091 跳蚤
查看>>
DUBBO本地搭建及小案例 (转)
查看>>
RabbitMQ指南之二:工作队列(Work Queues)
查看>>
软件测试2019:第八次作业—— 缺陷管理(含缺陷管理工具的配置实验)
查看>>
Go:slice
查看>>
一个android应用开发的感悟
查看>>
Qt Clipboard剪贴板简单使用
查看>>
使用UIElement.AddHandler捕获已被处理的RoutedEvent
查看>>
12.21站立会议
查看>>
SQL server 统计数据库表数量和列出所有表名称
查看>>
遍历DOM树,过滤节点
查看>>
XAML实例教程系列 - XAML传递参数到值转换类实例
查看>>
Android 推门效果
查看>>