Tomcat调优,主要修改conf/server.xml的文件

1、定义线程池
   Executor是公共的线程,定义一些公共的参数,参数不一样的定义在Connector
   <Executor name="tomcatThreadPool" namePrefix="catalina-exec-"  maxThreads="1000" acceptCount="1000" minSpareThreads="50" maxSpareThreads="100" maxIdleTime="600000" />
   name:定义名字以便Connector类调用,也可以让多个Connector调用,就达到了公用线程池的效果
   namePrefix="catalina-exec-" 在JVM上,每个运行线程都可以有一个name 字符串。这一属性为线程池中每个线程的name字符串设置了一个前缀,Tomcat将把线程号追加到这一前缀的后面。默认值:tomcat-exec-;
   maxThreads="1000" Tomcat使用线程来处理接收的每个请求。这个值表示Tomcat可创建的最大的线程数。默认值200。可以根据机器的时期性能和内存大小调整,一般可以在400-500。最大可以在800左右。
   acceptCount="1000"  当tomcat起动的线程数达到最大时,接受排队的请求个数,默认值为100
   minSpareThreads="50" Tomcat初始化时创建的线程数。默认值4。如果当前没有空闲线程,且没有超过maxThreads,一次性创建的空闲线程数量。Tomcat初始化时创建的线程数量也由此值设置。
   maxSpareThreads="50"  一旦创建的线程超过这个值,Tomcat就会关闭不再需要的socket线程。默认值50。一旦创建的线程超过此数值,Tomcat会关闭不再需要的线程。线程数可以大致上用 “同时在线人数*每秒用户操作次数*系统平均操作时间” 来计算。
   maxIdleTime="60000"  在Tomcat关闭一个空闲线程之前,允许空闲线程持续的时间(以毫秒为单位)。只有当前活跃的线程数大于minSpareThread的值,才会关闭空闲线程。默认值:60000(一分钟)。

2、使用线程池
   <Connector port="80"  executor="tomcatThreadPool"  redirectPort="8443"  minProcessors="5" maxProcessors="50" connectionTimeout="20000" 
   compression="on" enableLookups="false" disableUploadTimeout="true" enableLookups="false"  compressionMinSize="2048" 
   compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain" URIEncoding="UTF-8">
    executor: 使用Executor定义的线程池
    redirectPort:重定向的端口
    minProcessors:服务器启动时创建的处理请求的线程数;
    maxProcessors:最大可以创建的处理请求的线程数;
    enableLookups:禁用DNS查询,就是不用解析客户端的DNS,如果需要就0设为true
    URIEncoding="UTF-8":运行系统的编码
    enableLookups="false":是否反查域名,取值为:true或false。为了提高处理能力,应设置为false
    disableUploadTimeout="true":上传文件超时时间
    compression="on": 压缩建议不压缩,压缩会消耗时间
    compressionMinSize="2048":最小的压缩的大小
    compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain":压缩的内容类型

3、实例
     <Executor name="tomcatThreadPool" namePrefix="catalina-exec-"  maxThreads="1000" acceptCount="1000" minSpareThreads="50" maxSpareThreads="100" maxIdleTime="600000" />
     <Connector port="80"  executor="tomcatThreadPool"  redirectPort="8443"  minProcessors="5" maxProcessors="50" connectionTimeout="20000" 
     compression="on"  disableUploadTimeout="true" enableLookups="false"  compressionMinSize="2048" 
     compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain" URIEncoding="UTF-8" />

Tomcat优化方案相关推荐

  1. Tomcat 优化方案

    Tomcat 优化方案 一.Tomcat内存优化 1. Tomcat内存优化主要是对 tomcat 启动参数优化,我们可以在 tomcat 的启动脚本 catalina.sh 中设置 java_OPT ...

  2. Tomcat 配置详解/优化方案

    Server.xml [原地址:http://blog.csdn.net/cicada688/article/details/14451541] Server.xml配置文件用于对整个容器进行相关的配 ...

  3. Tomcat 配置详解/优化方案

    Service.xml Server.xml配置文件用于对整个容器进行相关的配置. <Server>元素: 是整个配置文件的根元素.表示整个Catalina容器. 属性: classNam ...

  4. tomcat优化-有改protocol 和 缓存 集群方案

    tomcat优化 在线上环境中我们是采用了tomcat作为Web服务器,它的处理性能直接关系到用户体验,在平时的工作和学习中,归纳出以下七种调优经验. 1. 服务器资源 服务器所能提供CPU.内存.硬 ...

  5. tomcat优化-有改protocol 和 缓存 集群方案 转载自http://passover.blog.51cto.com/2431658/732629

    tomcat优化 在线上环境中我们是采用了tomcat作为Web服务器,它的处理性能直接关系到用户体验,在平时的工作和学习中,归纳出以下七种调优经验. 1. 服务器资源 服务器所能提供CPU.内存.硬 ...

  6. react性能优化方案_React灵敏且性能卓越的Spray + Akka解决方案,以“在Java和Node.js中发挥并发性和性能”...

    react性能优化方案 在我以前的文章中,我研究了一个虚拟的交易引擎,并将基于Java的阻止解决方案与基于Node.js的非阻止解决方案进行了比较. 在文章的结尾,我写道: 我怀疑随着Node.js的 ...

  7. nginx做代理访问慢,优化方案

    如果ng和程序在同一台服务器上,优化方案使用内网IP或者127.0.0.1的ip作为域名映射的ip地址,使用127.0.0.1有可能也会有问题所以最好使用内网IP #user  nobody; wor ...

  8. Tomcat优化之JDK优化之熵池策略

    在apache-tomcat官方文档:如何让tomcat启动更快 里面提到了一些启动时的优化项,其中一项是关于随机数生成时,采用的"熵源"(entropy source)的策略. ...

  9. 应用部署优化方案分享

    转载本文需注明出处:微信公众号EAWorld,违者必究. 引言: 在企业级应用实施和运营过程中,为了解决企业中部分业务场景访问量大.并发量高的问题,就需要对系统架构及应用参数做出优化和调整,如架构优化 ...

最新文章

  1. 转载:Ajax及 GET、POST 区别
  2. Remote Desktop Manager 2019中文版
  3. java判断星期天_java实现一个月的最后一个星期天
  4. [CF893F]Subtree Minimum Query
  5. java fangfa_daicanfangfa java中的方法 刚入门的分不清带参方法的作用和用处 这个可以详细的讲解如何使用带参方法 - 下载 - 搜珍网...
  6. jquery.cookie中的操作
  7. 20165230 2017-2018-2 《Java程序设计》第8周学习总结
  8. 前端开发工程师如何在2013年里提升自己
  9. PHP面相对象中的重载与重写
  10. SpringBoot 集成 Caffeine、Redis实现双重缓存方式(二)
  11. 趣谈网络协议——HTTPS协议
  12. java程序设计-飞机大战
  13. OK3399设置GPIO默认低电平
  14. 狂神说Java---java学习笔记(图片有些问题,有时间将图片从电脑上传上来)
  15. 关于SFM的材质vmt科普
  16. 用JS去掉IE窗口的标题栏,工具栏,地址栏
  17. [OHIF-Viewers]医疗数字阅片-医学影像-React/Redux 的好帮手Classnames
  18. STC用PCA测量脉宽_超快激光脉冲测量和诊断使用自相关仪
  19. catia锥齿轮cad三视图_catia直齿圆锥齿轮有限元分析
  20. Flask 学习-9. 开启调试模式(debug模式)的2种方法

热门文章

  1. Markdown的使用之一:表格和公式
  2. Kiva(亚马逊)机器人介绍
  3. 亚马逊Amazon-API接口使用说明
  4. getLocation需要在app.json中声明permission字段
  5. Ceph运维告诉你分布式存储的那些“坑”
  6. java8的时期和时间
  7. Refused to execute inline script because it violates the following Content Security Policy directive
  8. 【netcore】MiniExcel轻量级开源组件使用
  9. KDevelop开发环境的搭建
  10. imatest测试分辨率使用教程