WebLogic在Ubuntu上的最佳实践
系统准备
apt安装必要工具和依赖:sudo apt update && sudo apt install default-jdk unzip(JDK为WebLogic运行基础)。weblogic)和用户组(如weblogic),避免使用root运行;设置WebLogic安装目录(如/opt/weblogic)权限为chown -R weblogic:weblogic /opt/weblogic。静默安装(推荐)
fmw_14.1.1.0.0_wls_lite_generic.jar),创建响应文件(wls.rsp),包含安装路径、管理员账号等信息;通过命令静默安装:java -jar fmw_14.1.1.0.0_wls_lite_generic.jar -silent -responseFile /opt/weblogic/wls.rsp -invPtrLoc /opt/weblogic/oraInst.loc。域配置与管理
config.sh脚本创建域(开发/生产环境),指定域名称(如base_domain)、监听端口(默认7001);启动域:cd /opt/weblogic/user_projects/domains/base_domain/bin/ && ./startWebLogic.sh。系统层面优化
/etc/sysctl.conf,调整以下参数提升系统性能:
vm.swappiness=10(减少内存交换,避免I/O瓶颈);net.core.somaxconn=4096(增加TCP连接队列长度,应对高并发);net.ipv4.tcp_tw_reuse=1(复用TIME-WAIT连接,减少连接建立开销)。修改后执行sysctl -p生效。cgroups限制非关键进程内存占用,或使用ulimit -n 65535增加WebLogic进程的文件描述符限制(避免连接数过多导致崩溃)。iotop监控磁盘读写,优化热点数据存储位置。WebLogic自身优化
-Xms与-Xmx设为相同值,如-Xms2048m -Xmx2048m),避免频繁垃圾回收;选择G1垃圾回收器(-XX:+UseG1GC),降低Full GC停顿时间。Thread Count设为CPU核心数的1.5-2倍,如8核服务器设为12-16);优化JDBC连接池(Initial Capacity设为5-10,Max Capacity设为50-100,Inactive Connection Timeout设为30秒),避免连接泄漏。-Dweblogic.http.enableGZIP=true),减少网络传输时间;设置NativeIOEnabled=true,提升网络通信效率。应用层优化
ufw或iptables),仅开放必要端口(如7001、8080);使用HTTPS(通过Let’s Encrypt获取免费证书),加密数据传输。top、htop实时查看进程状态;安装vmstat、iostat、sar监控系统负载(CPU、内存、磁盘I/O);通过ss或netstat监控网络连接(如ss -tulnp | grep 7001查看7001端口的连接情况)。Monitoring模块(如服务器状态、线程池、连接池),设置阈值告警(如线程池使用率超过80%时发送邮件);启用JMX(-Dcom.sun.management.jmxremote),通过第三方工具(如Prometheus+Grafana)实现可视化监控。server.log、access.log),定位性能瓶颈(如慢SQL、线程阻塞);使用logrotate工具归档日志(如每天归档,保留30天),避免日志文件过大占用磁盘空间。/opt/weblogic/user_projects/domains/base_domain),避免配置丢失。