tomcat优化

线程池优化

  1. maxConnections(最大连接数)
    注意:最大连接数是受系统内核限制的,查看方式ulimit -a


    句柄.png

可是适当调大这个数量,修改方式vim /etc/security/limits.conf


添加配置.png

添加tomcat的maxConnections,这里有两个点要注意

  • 对cpu要求更高时,建议不要配置过于大,因为会过于大对cpu竞争更激烈
  • 对cpu要求不是特别高时,建议配置3000左右(64g内存,32核cpu)
  1. maxThread和acceptCount
    maxThread是最大线程数,默认值是200,一般配置500~700左右
    acceptCount就是排队等待的数量一般和maxThread持平或略低
    maxThread+acceptCount就是单tomcat最大处理数
    配置方式:tomcat的server.xml


    线程池优化.png

jvm优化(jdk1.8)

jvm优化.png

配置方式:修改catalina.sh


jvm配置.png

使用jmp -heap pid可以查看参数是否生效

GZip

使用GZip进行网络传输的压缩
配置方式:


GZip配置.png
  • compression: 打开压缩功能
  • compressionMinSize:启用压缩的输出内容大小,默认是2k
  • compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain" 哪些资源类型需要压缩

其他项配置

  • minSpareThreads最小空闲线程数
  • connectionTimeout连接超时时间


    其他优化.png

模式选择

  • tomcat有三种模式:
  1. BIO:最稳定最老的连接器,使用阻塞形式处理请求
  2. NIO:异步非阻塞处理请求
  3. APR:原生c语言编写的非阻塞I/O,目前性能最理想
    (tomcat配置apr,请参考https://www.jianshu.com/p/b6b7390bde22
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 知识补充: 同步 : 自己亲自出马持银行卡到银行取钱(使用同步IO时,Java自己处理IO读写)。 异步 : 委托...
    宇晨棒棒的阅读 1,426评论 0 0
  • Tomcat在各位JavaWeb从业者常常就是默认的开发环境,如果用tomcat做为生产环境则有很多地方需要去优化...
    IT_炜阅读 483评论 0 5
  • 常见的http服务器有apache,nginx,iis,tomcat等。HTTP服务器本质上也是一种应用程序——它...
    可乐爱上咖啡阅读 3,996评论 1 49
  • http://blog.csdn.net/wuliu_forever/article/details/526071...
    鱼仔_1625阅读 981评论 0 1
  • Connector配置建议 线程池优化 maxConnections - 最大连接数 可以通过 ulimit -a...
    Loofer阅读 600评论 0 0