Jetty最大线程数原理及优化

Jetty默认的线程池初始化大小为8,最大线程数为200,在创建Server时如果没有指定线程池数量,框架会初始化一个QueuedThreadPool。部分代码如下:

    this._threadPool = (ThreadPool)(pool != null?pool:new QueuedThreadPool());

    public QueuedThreadPool() {
     
        this(200);
    }

    public QueuedThreadPool(@Name("maxThreads") int maxThreads) {
     
        this(maxThreads, 8);
    }

如果应用的并发高于200,则默认值不符合要求,可通过以下方式调整线程数大小。

int port = 8081;
//第一个参数为最大线程数,第二个参数为最小线程数
QueuedThreadPool threadPool = new QueuedThreadPool(2000, 20);
Server server = new Server(threadPool);
ServerConnector connector = new ServerConnector(server);
connector.setPort(port);
server.addConnector(connector);

/**
 * 其他设置
 *
 */

//启动
server.start();

你可能感兴趣的:(Jersey,Jetty容器,最大线程数量,并发,优化)