Linux环境WebLogic如何调优
导读:Linux环境下 WebLogic 调优实践 一 操作系统与网络层优化 文件描述符与进程限制 提高单进程可打开文件数:在 /etc/security/limits.conf 增加如:* soft nofile 65536;* hard...
Linux环境下 WebLogic 调优实践
一 操作系统与网络层优化
- 文件描述符与进程限制
- 提高单进程可打开文件数:在 /etc/security/limits.conf 增加如:* soft nofile 65536;* hard nofile 65536,并在 /etc/pam.d/login 加入 session required pam_limits.so;用 ulimit -n 验证。系统级上限查看:cat /proc/sys/fs/file-max。
- 可用端口与本地端口范围
- 扩大客户端端口池:net.ipv4.ip_local_port_range = 1024 65535,提升短连接并发能力。
- 连接跟踪与会话回收
- 如启用 conntrack,适当提升:net.ipv4.ip_conntrack_max(示例 1048576);缩短回收:net.ipv4.tcp_fin_timeout = 30。
- TCP 缓冲与队列
- 提升默认/最大缓冲与自动调优范围:net.core.rmem_default/wmem_default = 262144;net.core.rmem_max/wmem_max = 16777216;net.ipv4.tcp_rmem/tcp_wmem = 4096 87380 16777216;net.core.netdev_max_backlog = 4096;net.core.somaxconn = 4096。
- KeepAlive 与 TIME_WAIT
- 更快发现死连接:net.ipv4.tcp_keepalive_time = 1800;net.ipv4.tcp_keepalive_intvl = 30;net.ipv4.tcp_keepalive_probes = 3。
- 虚拟内存与 I/O
- 降低换页倾向:vm.swappiness = 10;适度提高脏页回写阈值:vm.dirty_ratio = 20(按负载微调)。
- 生效方式
- 编辑 /etc/sysctl.conf 后执行 sysctl -p;必要时重启网络服务或实例。
二 JVM 与 WebLogic 线程池
- JVM 堆与 GC
- 堆大小建议:堆上限不超过物理内存的 60%–80%,且 -Xms 与 -Xmx 设为相同 以避免运行时扩缩容抖动;在域目录 bin 下的 setDomainEnv.sh 设置 USER_MEM_ARGS,例如:-Xms8G -Xmx8G;选择合适的垃圾回收器(如并行/CMS/G1)并结合 GC 日志与停顿目标微调。
- 线程模型与 Work Managers
- 现代版本(如 10.x)默认启用 自调优执行队列(Work Managers),优先使用 Work Managers 而非传统 execute queues;仅在维护老系统或特定兼容性需求时,才启用 8.1 风格队列(config.xml 中 true),并显式创建 weblogic.kernel.Default 队列。
- 线程数经验值
- 传统默认队列(开发/生产)分别为 15/25;自调优模型下不建议盲目增大线程数,应结合吞吐、响应时间与 CPU 利用率综合评估。
- 监控与排障
- 控制台监视器查看 Queue Length、Execute Threads、Stuck Thread Count;出现“stuck thread”时先定位慢请求(SQL/外部依赖/锁),再考虑适度提高线程上限或优化应用;必要时调整 Stuck Thread Max Time。
三 连接池与数据库层
- JDBC 连接池
- 初始容量、最大容量与增量按业务峰值与数据库能力设定;所有 WebLogic 节点连接池的 最大容量之和 ≤ 数据库最大连接数(processes/sessions),避免数据库成为瓶颈。
- Oracle 侧配置
- 查询与调整最大进程数:show parameter processes;alter system set processes=500 scope=spfile; (重启生效)。
- 事务超时
- 合理设置 JTA 超时(如 900 秒),避免长事务占用资源。
四 监控与容量规划
- 系统层
- 持续观察 CPU、内存、磁盘 I/O、网络 与 TCP 状态(如 netstat -s、ss -s);使用 top/htop、vmstat、iostat、sar 建立基线并识别瓶颈。
- WebLogic 层
- 利用 Administration Console / Performance Monitoring 观察线程、队列、JVM 内存、数据源等关键指标;对长尾请求做 APM/线程转储/GC 日志分析,闭环优化。
五 安全与维护建议
- 启动与凭据
- 在 servers//security 下创建 boot.properties 存放加密后的启动账号密码,减少人工输入与泄露风险。
- 变更与回滚
- 参数调整遵循“小步快跑、可回滚”原则:先在测试环境验证,记录基线指标;生产变更分批进行并保留回滚方案。
- 风险提示
- 内核参数、JVM 参数与线程/连接池配置不当可能导致 稳定性与性能退化;务必在维护窗口内操作,并做好 备份与回滚预案。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Linux环境WebLogic如何调优
本文地址: https://pptw.com/jishu/779844.html
