**系统性能优化方案

 

一、操作系统调优<o:p></o:p>

Linux 调整参数 <o:p></o:p>

Linux 操作系统而言,为了获得最佳性能,推荐使用下列设置。 <o:p></o:p>

4-4 建议的 Linux <o:p></o:p>

参数 <o:p></o:p>

建议值 <o:p></o:p>

/sbin/ifconfig lo mtu <o:p></o:p>

1500 <o:p></o:p>

kernel.msgmni <o:p></o:p>

<st2:rtx w:st="on">1024</st2:rtx> <o:p></o:p>

kernel.sem <o:p></o:p>

1000 32000 32 512 <o:p></o:p>

fs.file-max <o:p></o:p>

65535 <o:p></o:p>

kernel.shmmax <o:p></o:p>

2147483648 <o:p></o:p>

net.ipv4.tcp_max_syn_backlog <o:p></o:p>

8192 <o:p></o:p>

有关 Linux 调整的更多信息,需参考 Linux 供应商提供的文档。<o:p></o:p>

对于操作系统的调优是需要考虑的一个方面,需要相关的人进行调整设置并测试,我这里没有做相关的预研。<o:p></o:p>

一、WEBLOGIC调优<o:p></o:p>

1. 调整Java虚拟机<o:p></o:p>

(1) 选择合适的JVM<o:p></o:p>

<o:p> </o:p>

(2) 配置JVM垃圾回收堆<o:p></o:p>

以下部分提供了调整 VM 堆大小的一般准则: <o:p></o:p>

²     堆大小应设置为一个适当的值,从而使 VM 使用的最大内存量不超过可用物理 RAM 量。如果超过该值,则 OS 会开始分页,性能也会显著降低。VM 使用的内存始终多于堆大小。除了堆大小设置,还要分配内部 VM 功能、VM 之外的本地库和永久代内存(仅适用于 Sun VM:存储类和方法所需的内存)所需的内存。 <o:p></o:p>

²     使用分代式垃圾收集方案时,温床大小不应超过 Java 堆总大小的一半。通常情况下,堆大小的 25% 40% 就已足够。 <o:p></o:p>

²     在生产环境中,将最小堆大小和最大堆大小设置为同一值,可以避免浪费用于时常调整堆大小所需的 VM 资源。这也适用于新一代堆大小 (Sun) 或温床大小 (BEA Jrockit) <o:p></o:p>

5-3 Java 堆大小选项  <o:p></o:p>

任务 <o:p></o:p>

选项 <o:p></o:p>

注释 <o:p></o:p>

设置新一代堆大小 <o:p></o:p>

-XX:NewSize <o:p></o:p>

-XX:NewSize 的大小设置为堆大小的四分之一,这是一条通用规则。如果存在大量短期对象,则增大此选项的值。 <o:p></o:p>

在增加处理器的同时,一定要增加新一代堆大小。内存分配可以并行进行,但垃圾收集不可并行进行。 <o:p></o:p>

设置最大新一代堆大小 <o:p></o:p>

-XX:MaxNewSize <o:p></o:p>

设置新一代堆大小的上限。 <o:p></o:p>

设置新堆大小比率 <o:p></o:p>

-XX:SurvivorRatio <o:p></o:p>

新一代区域分为三个子区:Eden 和两个大小相等的生存空间。 <o:p></o:p>

配置 Eden/生存空间大小的比率。尝试将此值设置为 8,然后监视垃圾收集情况。 <o:p></o:p>

设置最小堆大小 <o:p></o:p>

-Xms <o:p></o:p>

将最小堆大小 (-Xms) 与最大堆大小 (-Xmx) 设置为相同的值,以便将垃圾收集的消耗降至最低,这是一条通用规则。 <o:p></o:p>

设置最大堆大小 <o:p></o:p>

-Xmx <o:p></o:p>

设置堆大小的上限。 <o:p></o:p>

设置大堆和私有共享内存 <o:p></o:p>

-XX:+UseISM -XX:+AggressiveHeap <o:p></o:p>

请参阅 http://java.sun.com/docs/hotspot/ism.html <o:p></o:p>

<o:p> </o:p>

例如,从 java 命令行启动 WebLogic Server 实例时,可使用以下命令指定 HotSpot VM 堆大小值: <o:p></o:p>

$ java -XX:NewSize=<st1:chmetcnv w:st="on" tcsc="0" unitname="m" sourcevalue="128" negative="False" numbertype="1" hasspace="False">128m</st1:chmetcnv> -XX:MaxNewSize=<st1:chmetcnv w:st="on" tcsc="0" unitname="m" sourcevalue="128" negative="False" numbertype="1" hasspace="False">128m</st1:chmetcnv> -XX:SurvivorRatio=8 -Xms<st1:chmetcnv w:st="on" tcsc="0" unitname="m" sourcevalue="512" negative="False" numbertype="1" hasspace="False">512m</st1:chmetcnv> -Xmx<st1:chmetcnv w:st="on" tcsc="0" unitname="m" sourcevalue="512" negative="False" numbertype="1" hasspace="False">512m</st1:chmetcnv><o:p></o:p>

建议省厅财政综合业务系统的设置:<o:p></o:p>

$ java -XX:NewSize=<st1:chmetcnv w:st="on" tcsc="0" unitname="m" sourcevalue="256" negative="False" numbertype="1" hasspace="False">256m</st1:chmetcnv> -XX:MaxNewSize=<st1:chmetcnv w:st="on" tcsc="0" unitname="m" sourcevalue="256" negative="False" numbertype="1" hasspace="False">256m</st1:chmetcnv> -XX:SurvivorRatio=8 –Xms<st1:chmetcnv w:st="on" tcsc="0" unitname="m" sourcevalue="1024" negative="False" numbertype="1" hasspace="False"><st2:rtx w:st="on">1024</st2:rtx>m</st1:chmetcnv> –Xmx<st1:chmetcnv w:st="on" tcsc="0" unitname="m" sourcevalue="1024" negative="False" numbertype="1" hasspace="False"><st2:rtx w:st="on">1024</st2:rtx>m</st1:chmetcnv><o:p></o:p>

注:<o:p></o:p>

²       需要区别的是对于JVM版本的不一样,其设置也不一。请参考以上的各参数说明来设置。<o:p></o:p>

²       堆的大小一定要根据服务器硬件及实际用户访问量、系统资源利用情况、垃圾回收频率等因素综合考虑。<o:p></o:p>

2. 配置产品模式<o:p></o:p>

对于weblogic 有两种模式,分别为产品模式和开发模式,其主要区别在于发布部署方式和对线程数、连接池数的默认设置不一样。具体说明如下:<o:p></o:p>

功能<o:p></o:p>

开发模式<o:p></o:p>

产品模式<o:p></o:p>

部署<o:p></o:p>

替换文件会自动更新<o:p></o:p>

替换文件后不会自动更新<o:p></o:p>

Execute Queues<o:p></o:p>

默认的执行线程为15<o:p></o:p>

默认的执行线程为25<o:p></o:p>

JDBC Connection Pool Capacity<o:p></o:p>

默认的容量为15<o:p></o:p>

默认的容量为25<o:p></o:p>

对于Execute QueuesJDBC Connection Pool Capacity如何设置一个合理的数值,需要根据实际环境测试进行调整。需要注意的是,这两个参数不是越大越好。<o:p></o:p>

3. 调整性能相关的配置参数<o:p></o:p>

(1)  pageCheckSeconds<o:p></o:p>

weblogic中的默认设置是1, 表示WebLogic每一秒钟都针对每个JSP页面进行检查,看是否有新的版本。这在开发时是一个很好的设置,但是在生产中,如果系统有大量的JSP页面,这将会造成巨大的开销。<o:p></o:p>

对于财政综合业务系统,需要把这个参数设置成“-1”。<o:p></o:p>

weblogic.xml 配置如下:<o:p></o:p>

<jsp-descriptor></jsp-descriptor><o:p></o:p>

<jsp-param></jsp-param><o:p></o:p>

      <param-name></param-name> pageCheckSeconds<o:p></o:p>

      <param-value></param-value> -1<o:p></o:p>

<o:p></o:p>

<o:p></o:p>

文档太大,发不了,请参看

http://blog.csdn.net/xzhm1007/archive/2007/04/26/1585854.aspx

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值