温馨提示×

debian中weblogic怎样调优

小樊
41
2026-09-17 13:10:51
栏目: 智能运维

在 Debian 上运行 WebLogic Server 时,调优通常从 操作系统、JVM、WebLogic 自身参数、应用层面 四个方面入手。下面按实战角度给你一套较完整的调优思路。


一、Debian 系统层调优

1. 文件描述符(非常重要)

WebLogic 连接数高时容易报 too many open files

# 查看
ulimit -n

# 临时修改
ulimit -n 65535

# 永久修改
vi /etc/security/limits.conf
weblogic soft nofile 65535
weblogic hard nofile 65535

并确保:

vi /etc/pam.d/common-session
session required pam_limits.so

2. 内核参数优化

编辑 /etc/sysctl.conf

net.core.somaxconn = 65535
net.ipv4.tcp_max_syn_backlog = 8192
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_fin_timeout = 30
sysctl -p

3. 关闭不必要的服务

systemctl disable bluetooth
systemctl disable avahi-daemon

二、JVM 调优(最关键)

WebLogic 通常使用 Oracle JDK / OpenJDK(HotSpot)

1. 设置 JVM 堆内存

编辑:

$DOMAIN_HOME/bin/setDomainEnv.sh

示例(8G 内存机器):

USER_MEM_ARGS="-Xms4g -Xmx4g -XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=512m"
export USER_MEM_ARGS

✅ 建议:

  • -Xms = -Xmx(避免动态扩容)
  • 堆不超过物理内存 60–70%

2. 垃圾回收器选择

JDK 8

-XX:+UseParallelGC
# 或
-XX:+UseG1GC

JDK 11+

-XX:+UseG1GC

G1 示例:

-XX:+UseG1GC
-XX:MaxGCPauseMillis=200
-XX:+PrintGCDetails
-Xloggc:/logs/weblogic/gc.log

3. 线程栈大小

-XX:ThreadStackSize=256k

三、WebLogic Server 调优

1. 线程池(最重要)

路径:

Console → 服务器 → 配置 → 线程池

建议:

  • 最小线程数:CPU 核数 × 2
  • 最大线程数:CPU 核数 × 10~20

例如 8 核:

Minimum 16
Maximum 200

2. Accept Backlog

服务器 → 配置 → 调整
Accept Backlog = 1024

3. 连接池(JDBC)

服务 → JDBC → 数据源 → 连接池

建议:

初始容量 = 10
最大容量 = 100
最小容量 = 10

并开启:

  • 测试保留连接
  • 回收超时连接

4. 启用 Native IO

服务器 → 配置 → 调整
启用 Native IO = true

Debian 需安装:

apt install libaio1

四、网络与应用层优化

1. 启用 KeepAlive

服务器 → 协议 → HTTP
  • 启用 KeepAlive
  • 超时:30s

2. 静态资源分离

  • 图片/CSS/JS → Nginx
  • WebLogic 只处理动态请求

3. 会话复制(集群)

  • 使用 JDBC 或 Replication Group
  • 控制 Session 大小

五、监控与排查

1. 查看线程

jstack <pid>

2. 查看 GC

jstat -gcutil <pid> 1000

3. WebLogic 自带

Console → 监控 → 线程 / JDBC / JVM

六、典型推荐配置(8C16G)

-Xms8g -Xmx8g
-XX:+UseG1GC
-XX:MaxGCPauseMillis=200
-Xloggc:/logs/gc.log

WebLogic:

  • 线程:16 ~ 200
  • JDBC:10 ~ 100
  • Accept Backlog:1024

如果你愿意,可以告诉我:

  • WebLogic 版本(10.3 / 12c / 14c)
  • JDK 版本
  • 应用场景(ERP / 接口 / 高并发)

我可以给你一套针对性配置文件

0