查看物理cpu个数
grep 'physical id' /proc/cpuinfo | sort -u
查看核心数量
grep 'core id' /proc/cpuinfo | sort -u | wc -l
查看线程数
grep 'processor' /proc/cpuinfo | sort -u | wc -l
Tomcat的配置参数为:
server:
tomcat:
# URL统一编码
uri-encoding: UTF-8
# 在给定时间接受和处理的最大连接数,默认值10000 最大线程数量,需要大于 max-threads + accept-count
max-connections: 1200
# 允许的最大线程池里的线程数量,默认是200,大的并发应该设置的高一些,这里设置可以支持到20000并发 ,可以设为CPU线程数的200~250倍
maxThreads: 1000
# 监听端口队列最大数,满了之后客户请求会被拒绝(不能小于maxSpareThreads),默认为100 每个请求使用一个线程,线程数超过最大链接数后请求会进入等待队列,直到有线程处理
acceptCount: 1200
# 初始化时创建的最小线程数,始终保持运行,默认值25,这个要根据负载情况调整了。太小了就影响反应速度,太大了白白占用资源
minSpareThreads: 50
# executor启动时,是否开启最小的线程数
prestartminSpareThreads: true
# 任务队列上限
maxQueueSize: 100
# 最大空闲时间,超过这个空闲时间,且线程数大于minSpareThreads的,都会被回收,默认值1分钟(60000ms);
maxIdleTime: 60000
# 链接建立超时时间(单位:ms)
connection-timeout: 12000
# 请求头最大长度(单位:KB)1048576KB=1GB
max-http-header-size: 1048576
# 请求体最大长度(单位:KB)2097152=2GB
max-http-form-post-size: 2097152