跳转到主要内容

tomcat性能优化设置

有用的设置



server:
  tomcat:
    max-connections: 10000 # 最大连接数,默认值为8192,一般情况下可以不用修改
    threads:
      max: 1000 # 处理请求最大线程数,默认值是200,既tomcat的默认并发是200
      min-spare: 100 # 处理请求的最小空闲线程,即使没有请求需要处理,也保留,以便于快速响应连接请求
    accept-count: 100 # 额外的阻塞的处理请求数,当所有线程都在使用,还可以额外接受的请求,并放入请求队列,待有可用线程后立刻处理,一般不超过最大线程数的10%

  • max-connections: 10000:这个参数设置了Tomcat服务器允许的最大连接数。这意味着Tomcat在同一时间最多可以处理10000个客户端连接。这个值应该根据服务器的硬件资源(如CPU、内存)和网络带宽来调整,以确保服务器能够高效稳定地运行。

  • threads: 用于处理请求的线程池的参数。

    • max: 1000:线程池中的最大线程数。意味着Tomcat可以同时启动最多1000个线程来处理客户端请求。线程数数量需要考虑服务器的硬件资源。
    • min-spare: 100:线程池中保持空闲的最小线程数。即使当前没有那么多请求需要处理,Tomcat也会保持至少100个线程处于空闲状态,以便快速响应突然增加的请求量。

accept-count: 100:当所有可用的处理线程都在使用时,Tomcat能够接受的额外请求的数量,并将这些请求放入队列中等待处理。意味着如果所有的处理线程都在忙,Tomcat还可以接受额外的100个请求,但这些请求需要等待直到有线程变得可用。

连接数与线程数,根据TCP原理,是先建立连接,再处理请求,如果在连接超时后还没有处理请求,则断开连接,例如常见的timeout,socket closed