美文网首页J2EE学习--SpringBoot
springboot2.0 tomcat 优化

springboot2.0 tomcat 优化

作者: 晏雪峤_美杜莎 | 来源:发表于2018-12-18 00:28 被阅读102次

import org.apache.catalina.LifecycleListener;

import org.apache.catalina.connector.Connector;

import org.apache.catalina.core.AprLifecycleListener;

import org.apache.coyote.http11.Http11AprProtocol;

import org.apache.coyote.http11.Http11NioProtocol;

import org.springframework.beans.factory.annotation.Value;

import org.springframework.boot.web.embedded.tomcat.TomcatConnectorCustomizer;

import org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory;

import org.springframework.boot.web.servlet.server.ConfigurableServletWebServerFactory;

import org.springframework.context.annotation.Bean;

import org.springframework.context.annotation.Configuration;

/**

* @Auther: xxxx

* @Date: 2018/8/23 11:28

* @Description: tomcat 参数配置.

*/

@Configuration

public class TomcatConfig {

    @Value("${tomcat.apr:false}")

    private boolean enabled;

    @Bean

    public ConfigurableServletWebServerFactory webServerFactory()

    {

        TomcatServletWebServerFactory tomcatFactory = new TomcatServletWebServerFactory();

        tomcatFactory.addConnectorCustomizers(new MyTomcatConnectorCustomizer());

        if (enabled) {

            LifecycleListener aprLifecycle = new AprLifecycleListener();

            tomcatFactory.setProtocol("org.apache.coyote.http11.Http11AprProtocol");

            tomcatFactory.addContextLifecycleListeners(aprLifecycle);

        }

        return tomcatFactory;

    }

    class MyTomcatConnectorCustomizer implements TomcatConnectorCustomizer

    {

        public void customize(Connector connector)

        {

            if(enabled) {

                Http11AprProtocol protocol = (Http11AprProtocol) connector.getProtocolHandler();

                //设置最大连接数

                protocol.setMaxConnections(5000);

                //设置最大线程数

                protocol.setMaxThreads(2000);

                protocol.setConnectionTimeout(30000);

            }else {

                Http11NioProtocol protocol = (Http11NioProtocol) connector.getProtocolHandler();

                //设置最大连接数

                protocol.setMaxConnections(5000);

                //设置最大线程数

                protocol.setMaxThreads(2000);

                protocol.setConnectionTimeout(30000);

            }

        }

    }

}

相关文章

  • springboot2.0 tomcat 优化

    import org.apache.catalina.LifecycleListener; import org....

  • tomcat优化

    tomcat内存优化 Tomcat内存优化主要是对 tomcat 启动参数优化,我们可以在 tomcat 的启动脚...

  • Tomcat优化思路

    1 优化思路梳理 2 线程池优化 3 Tomcat 内存优化 4 Tomcat 的其他优化 5 Tomcat三种线...

  • Tomcat优化方案

    1.Tomcat的优化分成两块: Tomcat启动命令行中的优化参数即JVM优化 Tomcat容器自身参数的优化 ...

  • 1.怎样给tomcat调优?

    tomcat优化可分为系统优化,Java虚拟机调优,Tomcat本身的优化 1、Tomcat 自身调优 1) 采用...

  • Tomcat8史上最全优化实践

    1、Tomcat8优化 1.1、Tomcat配置优化 1.1.1、部署安装tomcat8 下载并安装 :https...

  • Centos Tomcat 调优

    Tomcat可以从内存、并发、缓存等方面进行优化 1、Tomcat内存优化: 在tomcat的启动脚本catali...

  • Tomcat内存优化

    Tomcat内存优化主要是对 tomcat 启动参数优化参数。 1.linux 下调整tomcat的内存设置 wi...

  • Tomcat 配置优化

    此文属于配置方面的优化内存、并发、缓存三方面进行优化 一.内存优化 Tomcat内存优化主要是对 tomcat 启...

  • tomcat性能调优

    tomcat性能调优一般从两个方面进行调优: tomcat启动参数优化:即JVM优化(内存) Tomcat 容器自...

网友评论

    本文标题:springboot2.0 tomcat 优化

    本文链接:https://www.haomeiwen.com/subject/zrnooftx.html