WebLogic Server配置和维护管理手册091130

更新时间:2023-12-16 20:34:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

WebLogic Server配置和维护管理

手册

二零零九年十一月

目 录

1 WEBLOGIC基本概念和环境说明 ........................................................................... 4

1.1 基本概念 ............................................................................................................ 4 1.2 环境说明 ............................................................................................................ 5 2 配置 .............................................................................................................................. 6

2.1 WEBLOGIC SERVER 配置 ................................................................................... 6

2.1.1 创建Standalone Server Domain ............................................................. 6 2.1.2 创建Standalone Server Domain ........................................................... 12 2.2 WTC 配置 ........................................................................................................ 13

2.2.1 Tuxedo 配置 .......................................................................................... 14 2.2.2 WebLogic 配置 ...................................................................................... 14 2.2.3 WTC连通性的简单检查方法 ............................................................... 16 2.3 JDBC配置 ........................................................................................................ 18 3 性能调优 .................................................................................................................... 19

3.1 JVM调优 ......................................................................................................... 19 3.2 WEBLOGIC SERVER调优 .................................................................................. 19

3.2.1 尽量使用本地IO库 ............................................................................. 19 3.2.2 调整默认执行线程数 ........................................................................... 20 3.3 JDBC调优 ........................................................................................................ 21

3.3.1 驱动程序类型选择 ............................................................................... 21 3.3.2 调节连接池初始容量和最大容量 ....................................................... 21 3.3.3 其他配置 ............................................................................................... 22 3.4 WEB调优 ........................................................................................................ 22

3.4.1 调整WEB应用描述符 ......................................................................... 22 3.5 其他调优设置 .................................................................................................. 23

3.5.1 WebLogic文件描述符大小调整 ........................................................... 23

4 维护管理 .................................................................................................................... 24

4.1 启动WEBLOGIC SERVER ................................................................................... 24 4.2 停止WEBLOGIC SERVER ................................................................................... 24 4.3 登录和退出管理控制台 .................................................................................. 24 4.4 性能监控 .......................................................................................................... 25 5 案例 ............................................................................................................................ 27

5.1 WEBLOGIC SERVER响应慢 ................................................................................ 27 5.2 WTC FAQ ......................................................................................................... 27

5.2.1 TPENOENT(6):0:0:TPED_MINVAL(0):QMNONE(0):0:No local or remote domain available xxx服务 ....................................................................... 27

5.2.2 TPESYSTEM(12):0:0:TPED_MINVAL(0):QMNONE(0):0 ................... 28 5.2.3 TPESYSTEM(13):0:0:TPED_MINVAL(0):QMNONE(0):0 ................... 28 5.2.4 TPESYSTEM(10):0:0:TPED_MINVAL(0):QMNONE(0):0 ................... 28 5.3 其他 .................................................................................................................. 28

5.3.1 为什么页面中的图表(饼图,柱状图)和验证码等图片在WebLogic

环境中不能正常显示? ......................................................................................... 28

5.3.2 修改的JSP不会立即生效怎么办? ..................................................... 29 5.3.3 JSP里面的静态文件、include JSP 中文显示不正常,这个问题怎么解决? ..................................................................................................................... 29

5.3.4 当发生JDBC连接池泄漏现象时,如何进行调试? ....................... 30

1 Weblogic基本概念和环境说明

1.1 基本概念

Domain 是WebLogic Server实例的基本管理单元。更详细的解说应该是,所谓Domain就是,由配置为Administrator Server的WebLogic Server实例管理逻辑单元,这个单元是有所有相关资源的集合。

Domain的类型:

? Standalone Server Domain

它主要是用来发布单一的应用程序,由单一WebLogic Server组成并且由它来负责web应用程序的运行。

? Admin Server with Managed Servers

这是一个最简单的企业运行环境。它可以发布多个Server实例去负责web应用程序的运行,由其中的一个Administration Server负责管理功能。

? Domain with Managed Servers and Clusters 具有更高性能的商业运行环境。

Server 是一个相对独立的,为实现某些特定功能而结合在一起的单元。 Machine 是一台运行一个或多个Weblogic Server实例的主机.

Clustering :WebLogic集群技术指通过一组服务器共同工作,在多台机器间复制应用表示层和应用逻辑层的能力,实现关键业务系统的负载分布,消除个别故障点。 集群用来实现负载均衡和容错

1.2 环境说明

属性名称 BEA产品 OS SDK WebLogic Server 8.1 SP5 AIX Version 5 java version \Java(TM) Environment, (build 1.4.2) Classic VM (build 1.4.2, J2RE 1.4.2 IBM AIX (SR3) build (JIT ca142-20050929a enabled: jitc))

2 Standard Runtime Edition

2 配置

2.1 WebLogic Server 配置

进入{WL_HOME}/weblogic81/common/bin/,执行config.sh

2.1.1 创建Standalone Server Domain

Step A- 1:

Step A-2:

Step A-3:选择非向导模式(express mode).

Step A-4:在图4界面,可以配置Server名称,监听端口等信息. 注意:配置的监听端口一定是未用状态才可以。

Step A-5:是否进行管理Server、集群和机器(machines)配置,选择否,按’Enter’键继续

Step A-6:

Step A-7:

Step A-8: 输入[1]回车,即修改当前输入的用户名,默认用户名为weblogic,提示输入一个当前域管理的新的用户名,

输入好后回车,例如weblogic,如下图,继续操作,输入[2]设置这个用户的密码

Step A-9:输入八位密码

Step A-10:

Step A-11:

Step A-12:

Step A-13:选择Domain运行模式,开发环境我们选择”1|开发模式”,生产环境我们选择”2|生产模式”.

Step A-14:选择JDK

Step A-15:

Step A-16:输入domain路径

Step A-17:输入domain名称

Step A-18:

Step A-19:domain创建成功

2.1.2 创建Standalone Server Domain

在配置standalone Server Domain 的 Step A-5 ”Managed Servers,Clusters and Machines”选项,配置 Managed Server.

Step B-6:

Step B-7: 输入Managed Server名称,以及监听端口号

Step B-8:

Step B-9:继续配置managed server,输入p,按’Enter’继续

Step B-10:重复Step B-7,Step B-8

Step B-11:managed Server配置完毕,按照Step A-6 ---- Step A-19进行WebLogic 其他配置。

2.2 WTC 配置

TUXEDO与WEBLOGIC之间通过DOMAIN方式实现互相调用,文档

中如果没有特殊申明:

TUXEDO所在的DOMAIN名为 TDOM1 。 TDOM1 Network Address ://172.16.24.105:17012 WEBLOGIC所在的 DOMAIN名为WDOM1。 WDOM1 Network Address://172.16.24.105:17011 TDOM1上有一个TUXEDO SERVEICE sPubSelect。

注:TDOM1、WDOM1 network address的端口号一定是没有占用的, 端口号要大于1024。

2.2.1 Tuxedo 配置

? 修改DMCONFIG文件

DM_REMOTE_DOMAINS段中加入

WDOM1 TYPE=TDOMAIN DOMAINID=\

? DM_TDOMAIN段中加入

TDOM1 NWADDR=\WDOM1 NWADDR=\

? dmloadcf /loaddm DMCONFIG ? stop TUXEDO , start TUXEDO

2.2.2 WebLogic 配置

通过 WebLogic控制台配置 WTC。

? 创建WTC 服务: 在 Administration Console 屏中 , 部署

Services 节点并单击 WTC 。将显示 WTC Services 屏。单击 Configure a New WTC Service 超链接。新显示的屏包括两个文本域: WTC 服务的名字和它的部署优先权顺序。单击 Create 按钮来新建一个 WTC 服务。

? 创建Tuxedo本地访问点: 单击该服务页的“ Content ”选项卡,

并在新显示的页面中单击“ Local Aps ”选项卡。要创建新的本地访问点,单击“ Configure a New Local Tuxedo Access Point ”超链

接。在 Tuxedo 本地访问点的“ General ”选项卡中,填写域“ Access Point ”、“ Access Point ID ”和“ Network Address ”。其中第一个域是用户选择名,第二个和第三个域必须与 DOMCONFIG 配置文件的 DM_TDOMAIN 段相关联。一般第一个域与第二个域所填的值都相同

? 创建远程 Tuxedo 访问点。 单击该服务页的“ Contents ”选项卡,

并在新显示的页面中单击“ Remote Aps ”选项卡。要创建新的 Tuxedo 远程访问点,单击“ Configure a New Remote Tuxedo Access Point ”超链接。在 Tuxedo 远程访问点的“ General ”选项卡中,填写域“ Access Point ”、“ Access Point ID ”、“ Local Access Point ”和“ Network Address ”。其中第一个域是用户选择名,第二个和第四个域必须与 DOMCONFIG 配置文件的 DM_TDOMAIN 段相关联。第三个域必须是我们在先前步骤中所选择的本地 访问点名。在同一屏的“ Connections ”选项卡中的默认域值对于大多数情况都是适用的。一般第一个域与第二个域所填的值都相同

? 导入服务:单击该服务页的“ Contents ”选项卡,并在新显示的页

面中单击“ Imported ”选项卡。要导入 WTC 服务,单击“ Configure a New Imported Service ”超链接。在“ General ”选项卡中,“ Resource name ”域 用户选择名(这个名webLogic自己用的,可以与Remote Name 不一样)。第二个和第三个域分别是先前定义的本地和远程 Tuxedo 访问点。最后 ,“ Remote name ”域 必须是Tuxedo中存在的服务。

? 重新部署:新注册的WTC服务只有在Server重新发布有才会生

效。点击“Target and Deploy”选项卡,首先选择”None“单选按钮,点击’Apply’;然后选择Server”实例名称”按钮,点击”Apply”,WTC服务发布生效。

2.2.3 WTC连通性的简单检查方法

? 确认DMCONFIG配置无问题,比如tab键分割,而不是空格之类

的错误,load是否成功,重新dmloadcf /loaddm一下

? 查看域连接情况

>dmadmin

# 连接一个远程的domain > co -d TDOM1 -R WDOM1

Operation completed successfully. Use printdomain(pd) to obtain results.

# 查看TDOM的远程domain列表

> pd -d TDOM1

Local domain :TDOM1 Connected domains: Domainid: WDOM1

? 检查TUXEDO配置情况,

查看UBBCONFIG关于domains配置情况,如所在的group,本例为WTCGRP_SXBOSS;检查TUXEDO配置情况,查看UBBCONFIG关于domains配置情况,如所在的group,本例为WTCGRP_SXBOSS >tmadmin

> psc -g WTCGRP_SXBOSS

Service Name Routine Name Prog Name Grp Name ID Machine # Done Status

------------ ------------ --------- -------- -- ------- ------ ------ DMADMIN DMADMIN DMADM WTCGR+ 1 SXBOSS 0 AVAIL

TDOM1 GWS GWADM WTCGR+ 2 SXBOSS 0 AVAIL 尤其要注意是否存在 GWTDOMAIN

确认远程的domain的service是否在上述列表中,如果没有,则调用失败

? 启动/停止整个group

tmshutdown -g WTCGRP_SXBOSS;tmboot -g WTCGRP_SXBOSS

# 虽然DMADM 与 GWADM/GWTDOMAIN 放在一起,但是在整个tuxedo server中 DMADM是唯一的; GWADM/GWTDOMAIN

可以有多对,多个group.

也可以启停其中GWADM/GWTDOMAIN任意一个: 指定server id的形式 tmshutdown -i 2;tmboot -i 3;

2.3 JDBC配置

3 性能调优

3.1 JVM调优

为提高高性能的吞吐量,应该把Java 堆的最小值与最大值设为相等。而为了防止内存溢出等情况的发生,需要把Java堆的大小调整成合适的值;下面是设置Java堆的大小的方法:

? commEnv.sh中设置

需要在WebLogic Server的启动脚本中,指定JAVA_VENDOR变量的值 JAVA_VENDOR=”Sun”

MEM_ARGS =“MEM_ARGS=\-Xms1536m -Xmx1536m -XX:PermSize=128m -XX:MaxPermSize=256m\

? WebLogic的启动脚本中设置(startWebLogic.sh)

MEM_ARGS赋值: 例:

MEM_ARGS

“MEM_ARGS=\

-Xmx1536m

-XX:PermSize=128m -XX:MaxPermSize=256m\

WebLogic Server启动脚本中:

${JAVA_HOME}/bin/java -D9001 ${JAVA_VM} ${MEM_ARGS} ${JAVA_OPTIONS}

-Dweblogic.Name=${SERVER_NAME}

-Dweblogic.ProductionModeEnabled=${PRODUCTION_MODE}

3.2 WebLogic Server调优

3.2.1 尽量使用本地IO库

WebLogic Server有两套套接字复用器:Java版和本地库。采用小型本地库更

有效,尽量激活Enable Native IO(默认),此时UNIX默认使用CPUs+1个线程,Window下为双倍CPU。如果系统不能加载本地库,将会抛出java.lang.UnsatisfiedLinkException,此时只能使用Java套接字复用器,可以调整socket readers 百分比,默认为33%。该参数可以在Console Server Tuning Configuration配置栏里设置,配置完,重新启动WebLogic Server即可。

3.2.2 调整默认执行线程数

名称 Execute Queues 开发模式 默认的执行线程为15 产品模式 默认的执行线程为25 推荐个数 200 在管理控制台修改默认执行队列线程数的步骤如下:

? 如果管理服务器没有运行,先启动。 ? 访问管理控制台。

? 展开左边面板的Servers 节点,显示Server列表。

? 右击Server,在弹出菜单中选择View Execute Queues ,就会在右

边面板显示有执行队列的表用来修改。 ? 注意:你只能修改默认的执行队列或者用户定义的执行队列。 ? 在Name列,直接点击默认执行队列名称,显示配置标签用来修

改执行队列数。 ? 填下适当的线程数。

? 点击Apply,保存刚才的修改。

? 重启Server,使新的执行队列设置生效。

3.3 JDBC调优

3.3.1 驱动程序类型选择

Oracle提供thin驱动和oci驱动,从性能上来讲,oci驱动强于thin驱动,特别是大数据量的操作。但在简单的数据库操作中,性能相差不大,随着thin驱动的不断改进,这一弱势将得到弥补。而thin驱动的移植性明显强于oci驱动。所以在通常情况下建议使用thin驱动

3.3.2 调节连接池初始容量和最大容量

JDBC Connection Pool的调优受制于WebLogic Server线程数的设置和数据库进程数,游标的大小。通常我们在一个线程中使用一个连接,所以连接数并不是越多越好,为避免两边的资源消耗,建议设置连接池的最大值等于或者略小于线程数。同时为了减少新建连接的开销,将最小值和最大值设为一致;值等于WebLogic

Server的执行线程数。

3.3.3 其他配置

尽管JDBC Connection Pool提供了很多高级参数,在开发模式下比较有用,但大部分在生产环境下不需调整。这里建议最好不要设置测试表, 同时Test Reserved Connections和Test Released Connections也无需勾上。 当然如果你的数据库不稳定,时断时续,你就可能需要上述的参数打开

3.4 WEB调优

3.4.1 调整WEB应用描述符

WEB应用除代码之外的调优比较简单,仅仅是对一些WEB应用描述符的调整。首先关闭Session Monitoring Enabled,仅仅在Cluster环境下设置Session复制

(优先使用内存复制),在保证应用正常运行的情况下,设置较短的Session超时时间。 同时生产环境下无需检查Jsp和servlet:JSPPage Check Secs和Servlet Reload Check Secs均设为-1,关闭JSP Keep Generated 和JSP Verbose对性能也有帮助。此外,还可以对jsp进行预编译,有两种方法:激活precompile选项;使用weblogic.appc事先编译,建议采用后者。

3.5 其他调优设置

3.5.1 WebLogic文件描述符大小调整

首先设置WEB主机系统的ulimit参数为unlimited ,然后设置WebLogic中文件描述符的大小。

在{WL_HOME}/bea/weblogic/common/bin中打开文件commEnv.sh,修改设置文件描述符大小的指令,将默认的:ulimit –n 1024修改为:ulimit –n 8192

4 维护管理

4.1 启动weblogic server

? 启动管理服务器:执行startAdmserver.sh

? 启动被管理服务器:执行startManagedWebLogic.sh servername adminurl

4.2 停止weblogic server

? 停止被管理服务器:执行stopWebLogic.sh servername ? 启动被管理服务器:执行stopWebLogic.sh

4.3 登录和退出管理控制台

? 管理服务器启动后可以在浏览器中登录管理控制台 ? 输

URL

http://hostname:port/console

https://hostname:port/console

? ? ?

hostname:管理服务器的ip地址或DNS名 port:管理服务器监听的端口

如果管理服务器启动时使用SSL,则使用https访问管理控制台

? 在弹出的窗口“Console Login“中输入用户名和密码登录

4.4 性能监控

? 查看性能参数

?

登录控制台后点击Servers-servername-Monitoring-Performance

? 参数分析

?

1)Idle Threads && Queue Length && Throughout

正常情况下 idle threads >0 ,queue Length为0,Throughout

呈不规则变化曲线,Memory Usage呈适度频度的锯齿变化曲线。

一般来说,对于正常配置的生产环境(线程数50~200),如果idle threads <10,或者呈现不断降低的趋势,就应加以关注;

空闲线程数与队列长度通常有如下关系:

A、 如果空闲线程数>0 ,则 queue length =0 ; B、 反之,如果queue length>0 ,则空闲线程数=0 ;

?

2)Memory Usage

Memory Usage = totalMemory() – freeMemory() 内存使用曲线反应了JVM Heap内存使用的变化情况,可以结

合其他三个值的变化情况来判断server工作情况;比较理想的状态是适当频度的各种锯齿变化,

由于JVM GC多采用“stop the world”机制,也就是垃圾回收时其他处理将暂停,过度频繁的GC将明显降低server工作效率和性能表现。

5 案例

5.1 weblogic server响应慢

在系统运行中,最经常遇到的是server响应慢的情况,首先确认空闲线程数与队列值,队列值可以直接看到,但空闲线程数可能需要刷新页面才能得到当前值,可以通过两者关系判断大致情况; Idle Thread =0 ,说明此时server无空闲线程处理请求,队列中将会有请求排队;此时再看吞吐量变化情况:

1、吞吐量>0 并且与正常运行情况下的变化趋势类似,说明当前请求压力超出系统并发能力,因此,如果cpu资源富余,增加线程数;如果cpu资源紧张,应考虑增加主机容量或添加其他主机,分担压力;

2、吞吐量=0 或者有较少的变化,说明目前线程的业务处理上一定程度上出现了问题,一般是出现了挂起(server hang);此时单纯增加线程数可能缓解状况,无法解决根本问题,此时需要采用其他手段来获取线程信息(unix下使用kill -3 来产生thread dump),并分析出故障的真正原因。如果线程数>0,说明当前请求处理处理较慢,通常也需要获取线程信息(thread dump)来了解当前线程工作状态,如正在进行的业务操作等等,来作为改善应用实现的参考依据。

5.2 WTC FAQ

5.2.1 TPENOENT(6):0:0:TPED_MINVAL(0):QMNONE(0):0:No

local or remote domain available xxx服务

服务没有调到。

请检查tuxedo domain 与 weblogic domain连通 (参见WTC 连通性的简单检查方法),请检查xxx服务是否在weblogic里配置正确。是否配置了xxx服务。如果没有配

置也会报这个错误。

请检查xxx服务在tuxedo中时候存在,如果是刚注册的xxx服务,请重现发布所在的WTC服务。如果没有重新发布,也会报这个错误。

如果tuxedo 日志显示duplicate server,表示有另外一个weblogic domain 配置相同的wtc配置。也就是说 一个Tuxedo domain 对应两个相同的Weblogic domain,这种情况,也会出现这个错误,

请修改另外weblogic domain的wtc配置。(配置相同是指 远程tuxedo访问点与本地tuxedo相同)。

如果跨防火墙,请修改连接策略 都改为ON_STARTUP

5.2.2 TPESYSTEM(12):0:0:TPED_MINVAL(0):QMNONE(0):0

tuxedo服务有问题或输入参数不正确。

5.2.3 TPESYSTEM(13):0:0:TPED_MINVAL(0):QMNONE(0):0

tuxedo服务返回超过了设置的时间。优化tuxedo服务或修改时间门限。

5.2.4 TPESYSTEM(10):0:0:TPED_MINVAL(0):QMNONE(0):0

tuxedo 服务或者输入参数有问题。

5.3 其他

5.3.1 为什么页面中的图表(饼图,柱状图)和验证码等图片在

WebLogic环境中不能正常显示?

在WebLogic 启动脚本中,在${JAVA_OPTIONS}后面加入 “ -Djava.awt.headless=true “, 重新启动WebLogic Server即可。

5.3.2 修改的JSP不会立即生效怎么办?

首先检查Web Application 的 Descriptor 中 JSPPage Check Secs 是否设置为〉=0

JSPPage Check Secs 表示JSP会在设置的时间间隔内检查是否JSP页面是否更新。如果更新,则重新编译,生成相应的class 如果上述设置正确,则检查系统时间是否正确。

JSP页面是否更新是根据文件的日期时间。如果系统时间小于文件的生成时间。则不会更新。 比如 系统时间是 20040102 而文件的生成时间是 20050607,则怎么修改jsp页面都不会更新。

5.3.3 JSP里面的静态文件、include JSP 中文显示不正常,这个

问题怎么解决?

在weblogic.xml文件的部分加入

compilerSupportsEncoding true

encoding GBK

Web Application 重新部署即可。 此外,在页首加入:

<%@ pagecontentType=“text/html;charset=GBK“%>

也可以解决中文显示不正常的问题。

5.3.4 当发生JDBC连接池泄漏现象时,如何进行调试?

观察后台日志,会看到下面信息:

<> <>

打开weblogic console 中 {your-pool}-- Connections -- Advanced Options 选项卡:

这样日志就打出了发生连接池泄露的代码。检查出代码后,要记住关掉这个选择。

本文来源:https://www.bwwdw.com/article/ntd5.html

Top