Tomcat优化

目录

Tomcat3种运行模式优化:

        1.BIO:blocking io

        2.NIO:non-blocking io

                 在Nio模式中打开线程池:

        3.APR:Apache Portable Runtime(高并发首选)

connector(连接器)优化:


Tomcat的2种工作模式:

        1.共享模式:Tomcat作为应用服务器,请求来自于前端的web服务器,例如来自Nginx.Apache,Httpd等,他们通过AJP协议与tomcat通信,更高效.

        2.独立服务器模式:请求直接来自于web浏览器,不是来自于nginx转发.

Tomcat3种运行模式优化:

        connector在处理HTTP请求时,会用到不通的protocol,不同的tomcat版本支持的protocol不同,最常用的有:

        1.BIO:blocking io

        -->阻塞IO,一个线程处理一个请求,也是默认的模式,性能低下,没有经过任何优化处理,高并发时线程数较多,浪费资源.

        启动BIO模式:

        org.apache.coyote.http11.Http11Protocol

        tail -f catalina.out

        2.NIO:non-blocking io

        -->非阻塞io,利用java的异步IO处理,可以实现少量线程处理大量请求.

           启动Nio模式:vim server.xml

           将connector中的 protocol由"HTTP/1.1"改为:"org.apache.coyote.http11.Http11NioProtocol"

                 在Nio模式中打开线程池:

         Executor:线程池组件

                name:线程池名称

                namePrefix:线程的名称前缀

                maxThreads:最大线程数

                minSpareThreads:最小活跃线程数

                maxIdleTime:空闲线程最大等待时间

                maxSpareThreads:最大空闲线程数,某空闲线程当前的空闲时间若大于最大空闲时间,

                                               则回收;若小于,则继续存活,等待cpu调度.

                maxQueueSize:等待队列中最大的请求数,超过时拒绝请求.

                prestartminSpareThreads:是否在启动时就生成minSpareThreads配置的线程数

        3.APR:Apache Portable Runtime(高并发首选)

            -->apache的可移植运行库,APR是在tomcat上运行高并发应用的首选模式,利用本地库可实现高扩展性,高性能,但是需要装apr,apr-utils,tomcat-native包.

            启动Apr模式:vim server.xml

            将connector中的 protocol由"HTTP/1.1"改为:"org.apache.coyote.http11.Http11AprProtocol"

connector(连接器)优化:

    http连接器(BIO,NIO,APR)的重要属性:

    acceptCount:请求连接的最大连接队列长度

    acceptorThreadCount:用于接受连接的线程数量,在多CPU机器上增加该值可以保持活动连接.

    compression:通常在nginx中配置压缩.

    maxConnections:在任何给定的时间服务器接受并处理的最大连接数,NIO是1000,APR是8192.

    enableLookups:禁用DNS查找,false提升性能

    URIEncoding:设置编码.

        Nginx+Tomcat做负载均衡的时候,可以禁用AJP协议.

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

chuntian_tester

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值