参数调优提升系统高并发

  • Nginx
  • Tomcat
  • Redis
  • 客户端数据连接池
  • MySQL
  • Linux


Nginx

修改nginx工作线程数量,默认1024,实际可支持上w线程数量。

worker_processes 10000

Tomcat

修改tomcat server.xml 中线程池,修改最大处理连接数 maxThreads(默认150)为800,参数如下:

<Executor name="tomcatThreadPool"        线程名称 
   namePrefix="catalina-exec-" 
    maxThreads="150"               最大处理连接数线程
    minSpareThreads="4"/>         保留最少线程数

Redis

redis连接池,redis可支持上w连接
最大连接数: redis.pool.maxActive=1024

客户端数据连接池

jdbc.pool.minPoolSize = 5
jdbc.pool.maxPoolSize = 100 -- 不要太小,比如20

MySQL

max_connetctions = 2000
max_user_connections = 1000
wait_timeout = 1000
太小的话,会出先 Too many connections错误

Linux

// 查看linux系统句柄数

ulimit -a

linux系统的句柄数 ,默认1024,修改参数

// 设置linux系统句柄数
ulimit -n 2048