圧力テストで「Too many open files」異常が発生し、weblogicが正常なアクセスを続行できません.


あるプロジェクトの生産開始前の圧力テストの過程で、同時50に達したとき、システムがアクセスできず、エラーが発生した.図のとおり.
“Too many open files”
この問題に遭遇した場合、まずシステム自体がファイルを開くことができる最大数をチェックし、weblogic自体にもファイルを開くことができる最大数があることを確認します.
システムのオープン最大数は制限されていません.問題の位置づけはweblogicの問題です.
解決方法:
/weblogic/oracle/Middleware/wlserver_10.3/common/binフォルダの下にcommEnvがあります.sh,ファイルの変更:
resetFd() {
  if [ ! -n "`uname -s |grep -i cygwin || uname -s |grep -i windows_nt || \
       uname -s |grep -i HP-UX`" ]
  then
    ofiles=`ulimit -S -n`
    maxfiles=`ulimit -H -n`
    if [ "$?" = "0" -a  `expr ${maxfiles} : '[0-9][0-9]*$'` -eq 0 -a `expr ${ofiles} : '[0-9][0-9]*$'` -eq 0 ]; then
      #ulimit -n 4096
      <strong><span style="color:#ff0000;">ulimit -n 65536</span></strong>
    else
      if [ "$?" = "0" -a `uname -s` = "SunOS" -a `expr ${maxfiles} : '[0-9][0-9]*$'` -eq 0 ]; then
        if [ ${ofiles} -lt 65536 ]; then
          ulimit -H -n 65536
        else
          ulimit -H -n ${ofiles}
        fi
      fi
    fi
  fi
}

図のように「4096」を「65536」に修正し、圧力が上がります!