WebLogic_Server配置和性能调优3

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=”-Xms1536m -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

以下文章点击率最高

Loading…

     

如果这文章对你有帮助,请扫左上角微信支付-支付宝,给于打赏,以助博客运营