Linux上优化WebLogic网络设置的实操指南
一 操作系统层网络与文件句柄优化
* soft nofile 65535
* hard nofile 65535
session required pam_limits.so
ulimit -n、cat /proc/sys/fs/file-max。WebLogic 大量并发连接依赖文件描述符(socket 也属于文件)。net.ipv4.ip_local_port_range = 1024 65535
tcp_tw_recycle,可能与 tcp_timestamps 共同开启时引发问题):net.ipv4.tcp_tw_reuse = 1
# net.ipv4.tcp_tw_recycle = 1 # NAT/负载均衡环境不建议开启
net.ipv4.tcp_fin_timeout = 30
net.ipv4.tcp_max_tw_buckets = 5000
net.core.rmem_default = 131072
net.core.wmem_default = 131072
net.core.rmem_max = 134217728
net.core.wmem_max = 134217728
net.ipv4.tcp_rmem = 4096 87380 134217728
net.ipv4.tcp_wmem = 4096 65536 134217728
net.core.somaxconn = 65535
net.core.netdev_max_backlog = 8096
net.ipv4.tcp_keepalive_time = 1800
net.ipv4.tcp_keepalive_intvl = 30
net.ipv4.tcp_keepalive_probes = 3
sysctl -pss -s、netstat -s、cat /proc/sys/net/core/somaxconn 等验证。二 WebLogic层网络与协议参数
somaxconn、业务并发目标匹配;队列过小会导致新连接被丢弃或超时。TCP_NODELAY=true)以降低小包延迟;若内核与客户端均支持,可启用 TCP Fast Open(需 WebLogic/容器与 OS 共同支持)。三 防火墙与连接跟踪
nf_conntrack 时)
sysctl -a | grep conntrack_max;在 /etc/sysctl.conf 增加(示例 1048576,需结合内存评估):net.netfilter.nf_conntrack_max = 1048576
四 监控验证与回滚
ss -s、netstat -s、sar -n DEV 1、cat /proc/net/sockstat;使用 JMeter/ wrk/ ab 做渐进式压测,观察错误率、P95/P99 时延、连接数、重传率。top/htop/dstat)定位瓶颈(线程不足/队列溢出/带宽饱和/丢包重传)。sysctl -p 回滚文件、limits 与 systemd 服务文件备份),在灰度/维护窗口执行,异常自动回滚。五 参数示例与注意事项
fs.file-max = 1048576
net.core.rmem_default = 131072
net.core.wmem_default = 131072
net.core.rmem_max = 134217728
net.core.wmem_max = 134217728
net.ipv4.tcp_rmem = 4096 87380 134217728
net.ipv4.tcp_wmem = 4096 65536 134217728
net.core.somaxconn = 65535
net.core.netdev_max_backlog = 8096
net.ipv4.ip_local_port_range = 1024 65535
net.ipv4.tcp_tw_reuse = 1
# net.ipv4.tcp_tw_recycle = 1 # NAT/负载均衡环境不建议
net.ipv4.tcp_fin_timeout = 30
net.ipv4.tcp_max_tw_buckets = 5000
net.ipv4.tcp_keepalive_time = 1800
net.ipv4.tcp_keepalive_intvl = 30
net.ipv4.tcp_keepalive_probes = 3
# 如启用 conntrack
net.netfilter.nf_conntrack_max = 1048576
tcp_tw_recycle;变更务必先在测试环境验证并保留回滚路径。