【新炬网络名师大讲堂】BES运行时重要参数设置

1. 语言环境设置

如果需要指定语言环境(如产生中文日志),可以直接设置操作系统语言变量,也可以设置bes的启动脚本的encoding设置。

在启动bes之前设置语言环境变量或在.profile中设置export LANG=。支持中文的语言变量为:

AIX平台:

ZH_CN.UTF-8

ZH_CN

Zh_CN.GB18030

Zh_CN

zh_CN.IBM-eucCN

zh_CN

HP-UX平台:

zh_CN.gb18030

zh_CN.hp15CN

zh_CN.utf8

Linux平台:

zh_CN

zh_CN.gb18030

zh_CN.gbk

zh_CN.utf8

增加jvm启动参数,如:

-Ddefault.client.encoding=”GBK” -Dfile.encoding=”GBK” -Duser.language=”Zh”

修改方法:

1、通过控制台修改,适用通过节点管理器启动实例的环境:

BES运行时重要参数设置

1

 

2. Java虚拟机内存设置

缺省java虚拟机内存只有512MB,不适合运行在生产系统,需要更改设置,如无特殊需求可以将其提高到4GB。

AIX平台:

AIX平台JDK1.6版本J9,permsize设置无效,故如下:

USER_MEM_ARGS=”-Xms4096m -Xmx4096m -Xmn1024m”

HP平台:

HP-UX使用64位大内存模式设置:

USER_MEM_ARGS=” -d64 –Xms4096m –Xmx4096m -Xmn1024m -XX:PermSize=1024m -XX:MaxPermSize=1024m”

LinuxSunOS平台:

USER_MEM_ARGS=”-Xms4096m –Xmx4096m -Xmn1024m -XX:PermSize=1024m -XX:MaxPermSize=1024m”

具体设置可根据应用实际使用内存情况设定。

3. Java虚拟机启动选项参数

1)  GC策略

SunHPJDK默认采用分代并发的收集策略,而IBMJDK则默认采用optthruput策略(共四种策略gencon | optavgpause | optthruput | subpool)

AIX平台:

IBM JDK建议使用gencon策略(分代并发),参数设置方式为:-Xgcpolicy:gencon

其主要作用是使JVM内存按照generation来分配,缺省是虚拟机自己管理。

HP-UX和Linux平台:

使用默认策略即可。

2)  禁止System.gc()

为避免程序主动通过System.gc()发起full GC,在java启动项中增加下面参数

AIX平台:

JAVA_OPTIONS=”-Xdisableexplicitgc”

HP和Linux平台:

如果需要禁止程序通过System.gc()发起full GC,则在设置下面的java参数:

JAVA_OPTIONS=”-XX:+DisableExplicitGC”

也可以不必关闭,而是允许其并行full GC,设置为:

JAVA_OPTIONS=”-XX:+ExplicitGCInvokesConcurrent”

3)  收集GC日志

AIX平台:

JAVA_OPTIONS=”-Xverbosegclog:$DOMAIN_HOME/logs/gc.$$.log”

HP-UX平台:

JAVA_OPTIONS=”-Xverbosegc:file=$DOMAIN_HOME/logs/gc.$$.log”

Linux平台(Oracle JVM):

JAVA_OPTIONS=”-Xloggc:$DOMAIN_HOME/logs/gc.$$.log -XX:+PrintGCDetails -XX:+PrintGCTimeStamps”

4)  手动生成heapdumphprof文件

AIX平台:

生成javacore及heapdump并指定core文件的生成位置,则使用下面的参数:

-Xdump:heap:file=$DOMAIN_HOME/logs/heapdump.%Y%m%d.%H%M%S.%pid.%seq.phd -Xdump:java:defaults:file=$DOMAIN_HOME/logs/javacore.%Y%m%d.%H%M%S.%pid.%seq.txt

HP平台:

-XX:+HeapDumpOnCtrlBreak

指定core文件的位置,使用下面的参数:

-XX:HeapDumpPath=$DOMAIN_HOME/logs/java_pid.$$.hprof

Linux平台:

JDK1.6中已经去除了-XX:+HeapDumpOnCtrlBreak,不能生成

5)  内存溢出时自动生成Heap Dumphprof

AIX平台:

AIX平台下可以不用设置参数,默认会自动生成javacore(由outofmemory引起的)文件。默认生成在$DOMAIN_HOME下。

生成javacore及heapdump并指定core文件的生成位置,则使用下面的参数:

-Xdump:heap:file=$DOMAIN_HOME/logs/heapdump.%Y%m%d.%H%M%S.%pid.%seq.phd -Xdump:java:defaults:file=$DOMAIN_HOME/logs/javacore.%Y%m%d.%H%M%S.%pid.%seq.txt

HP和Linux平台:

-XX:+HeapDumpOnOutOfMemoryError

指定core文件的位置,使用下面的参数:

-XX:HeapDumpPath=$DOMAIN_HOME/logs/java_pid.$$.hprof

6)  JVM Crash指定hs_err_pid文件生成位置

HP和Linux平台:

-XX:ErrorFile=$DOMAIN_HOME/logs/hs_err_pid$$.log

4. BES日志文件大小及文件个数设定

Bes日志文件大小及文件个数默认设定为10M,共10个,access日志文件默认为关闭状态,如项目有特殊要求,可根据以下方法进行设置:

通过控制台(推荐这种方式):

日志文件大小及个数设定:

2

 

access日志文件设定:

3

 

5. 请求预警时间设定

为保证对执行时间长的请求能正常打印堆栈信息,以便后续分析问题,特设定相应参数。(参考值:180s

通过控制台设定,方法如下:

4

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29960155/viewspace-1377545/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/29960155/viewspace-1377545/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值