Ubuntu上WebLogic配置有哪些技巧
小樊
31
2025-12-24 13:44:01
Ubuntu上WebLogic配置实用技巧
一 基础安装与环境准备
使用专用的weblogic 系统用户与目录,避免直接用root运行:groupadd/weblogic、useradd -g weblogic weblogic,安装目录如**/opt/weblogic**并chown -R weblogic:weblogic。这样更利于权限隔离与运维安全。
选择合适JDK(建议JDK 8 ),正确设置环境变量:export JAVA_HOME=/opt/jdk1.8.0_xxx;export MW_HOME=/opt/weblogic/Oracle/Middleware;export PATH=$JAVA_HOME/bin:$MW_HOME/wlserver/server/bin:$PATH;用java -version与echo $JAVA_HOME验证。
无图形环境采用静默安装:准备wls.rsp与oraInst.loc,执行java -jar fmw_12.2.1.3.0_wls.jar -silent -responseFile /path/wls.rsp -invPtrLoc /path/oraInst.loc;完成后用wlst.sh离线建域或运行配置向导创建域。
二 域创建与网络访问
建域方式二选一:1)控制台/配置向导方式:运行$MW_HOME/wlserver/common/bin/config.sh,按向导设置**域名称、管理员账号密码、端口(默认7001)**等;2)WLST离线方式:readTemplate、设置AdminServer的ListenAddress/ListenPort、设置密码、writeDomain并关闭模板。
访问控制台:浏览器打开http://服务器IP:7001/console ;如自定义端口(如9000 ),需放行防火墙(firewall-cmd --zone=public --add-port=9000/tcp --permanent && systemctl restart firewalld)。
远程/无图形环境建议全程使用WLST 或静默安装,减少X11依赖与误操作。
三 性能与安全关键调优
JVM内存:在域目录的bin/setDomainEnv.sh 中设置WLS_MEM_ARGS_64BIT(如-Xms4g -Xmx4g),一般将Xmx控制在物理内存的50%~60% ,单实例上限不宜超过8G ,避免频繁GC与OOM。
线程与队列:结合CPU与并发量调整执行线程与队列;必要时在JAVA_OPTIONS中设置weblogic.threadpool.MinPoolSize/MaxPoolSize(如800/1200起步,按压测微调)。
随机数源:为降低启动阻塞,可编辑$JAVA_HOME/jre/lib/security/java.security,将securerandom.source改为file:/dev/./urandom 。
文件句柄与进程数:在/etc/security/limits.conf提升上限(如nofile 65535、nproc 65535),并确认systemd服务段包含LimitNOFILE/LimitNPROC,避免“too many open files”。
TCP与内核:适度增大AcceptBacklog (如从默认50按25%逐步上调)缓解高并发连接排队;必要时优化内核网络参数与I/O调度策略。
Native IO:在控制台启用Enable Native IO ,提升网络吞吐与响应。
监控与容量:结合WebLogic控制台与性能监控工具,联动系统监控(如top/vmstat/iostat),持续观察GC、线程、连接池与I/O,按指标迭代调优。
四 数据源与连接池配置
控制台路径:Environment → Data Sources → New → Generic Data Source ,填写JNDI名称、驱动、URL、用户名、密码 ,选择目标服务器/集群。
连接池参数:设置Initial Capacity、Max Capacity、Min Capacity、Connection Timeout、Test Connections on Reserve 等;生产环境常将InitialCapacity与MaxCapacity设为相同 ,减少运行期扩容抖动。
验证与绑定:完成配置后执行Test Connection ,确认成功后激活更改;在应用中以配置的JNDI名称 进行JNDI查找与数据源引用。
五 运维与常见问题处理
启动与后台运行:前台./startWebLogic.sh便于排错;生产建议nohup ./startWebLogic.sh &记录日志,或使用systemd托管(注意设置WorkingDirectory、User=weblogic、LimitNOFILE/LimitNPROC、Environment=JAVA_HOME=…)。
类库冲突与依赖:如遇Hibernate/ANTLR 等冲突,可将所需JAR放入**$WL_HOME/server/lib并在 setDomainEnv.sh**的PRE_CLASSPATH中声明,重启生效。
常见报错速解:1)“MW_HOME should be set to a directory”多因环境变量未生效,执行source /etc/profile或检查MW_HOME路径;2)“connection refused”优先检查监听端口、防火墙、网络连通性 与AcceptBacklog;3)启动慢可优先切换**/dev/./urandom**并检查DNS解析与磁盘I/O。