tomcat 8 优化 及 liunx tcp 连接优化

liunx  tcp 优化:

高并发socket/tcp网络最大连接数所受的限制问题,ulimit文件打开数,文件描述符_jalyzjs_51CTO博客

web服务器和cache服务器,高并发下,socket最大连接数限制调整: 默认是1024,完全不够。

1,修改用户进程可打开最大文件数限制。

    即时生效:ulimit -n xxx

    永久生效:

echo "ulimit -HSn 65536" >> /etc/rc.local

echo "ulimit -HSn 65536" >> /root/.bash_profile

ulimit -HSn 65536

  查看最大文件数: 

  ulimit -n 

文件和线程数量修改

vi /etc/security/limits.conf
 
#加入如下参数, 禁用内存交换必须设置的参数
#nofile文件数
#nproc 线程数
es  soft  nofile  65536
es  hard  nofile  65536
es  soft  nproc  4096
es  hard  nproc  4096
 
* hard memlock unlimited
* soft memlock unlimited
 
 
或者
*  soft  nofile  65536
*  hard  nofile  65536
*  soft  nproc  32000
*  hard  nproc  32000
 
 
* hard memlock unlimited
* soft memlock unlimited
 

服务端通知上面前因后果中有提到可以设置

/proc/sys/net/ipv4/tcp_synack_retries

重新进行几次进行第二次握手。但是这个阶段,client端可能会发数据包过来造成超时;另外,可以设置

/proc/sys/net/ipv4/tcp_abort_on_overflow=1

整个握手直接断掉,client端是closed状态,它会找其他established状态的连接进行数据包发送,不会造成超时。事实上,

tcp_abort_on_overflow=1是作为默认配置的。

tcp 优化

全局服务生效,但是如果当前用户登陆shell,优先登陆用户limits.conf配置,但是limits.conf配置如果超越sysctl.conf配置,则无效(只能往小,不能往大),系统后台服务不受limits.conf限制

vi /etc/sysctl.d/chris_tcp.conf
 
#TCP 协议栈网络参数
 
#并发连接 backlog 设置:
net.core.somaxconn = 2048  
net.ipv4.tcp_max_syn_backlog = 16384  
net.core.netdev_max_backlog = 20000  
 
 
#TCP Socket 读写 Buffer 设置:
net.core.rmem_default = 262144  
net.core.wmem_default = 262144  
net.core.rmem_max = 16777216  
net.core.wmem_max = 16777216  
net.ipv4.tcp_rmem = 4096 4096 16777216  #'1024 4096 16777216'
net.ipv4.tcp_wmem = 4096 4096 16777216  #'1024 4096 16777216'
net.ipv4.tcp_mem = 786432 2097152 3145728   #'16777216 16777216 16777216'
 
 
#TCP 连接追踪设置:
net.nf_conntrack_max=1000000
net.netfilter.nf_conntrack_max=1000000
net.netfilter.nf_conntrack_tcp_timeout_time_wait=30
 
 
#FIN-WAIT-2 Socket 超时设置:
net.ipv4.tcp_fin_timeout = 15  
 
 
#TIME-WAIT Socket 最大数量、回收与重用设置:
net.ipv4.tcp_max_tw_buckets=1048576
 
# 注意:不建议开启該设置,NAT 模式下可能引起连接 RST
#是否重用, 快速回收time-wait状态的tcp连接
#net.ipv4.tcp_tw_reuse = 1  
#net.ipv4.tcp_tw_recycle = 1  
 
 
#可处理最多孤儿socket数量,超过则警告,每个孤儿socket占用64KB空间
net.ipv4.tcp_max_orphans = 131072  
 
 
#可分配端口 可用知名端口范围
net.ipv4.ip_local_port_range = 1024 65535  
 
#系统级别最大打开文件
#百万并发服务器中常用的几个配置 , 注意一个正向连接要消耗2个tcp,    一个反向代理需要消耗4个tcp
fs.file-max = 2000000
#单用户进程最大文件打开数
fs.nr_open = 2000000
 
 
/sbin/sysctl -p 生效 

tomcat  8优化:

【 Tomcat 】tomcat8.0 基本参数调优配置-----(2) - 请叫我老焦 - 博客园

Tomcat 8.0的并发优化 - 优化server.xml的配置 - 瘦风 - 博客园

优化后的jvm监控美如画: cpu使用率从百分之60降到百分之20, 内存使用率及回收也降了百分之40.

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值