Weblogic服务器各Server服务及部署的Web应用运行正常,网页无法访问

问题描述:Weblogic服务器各Server服务及部署的Web应用运行正常,但用户却无法链接访问网页。
Server服务运行正常
Weblogic服务器各Server服务及部署的Web应用运行正常,网页无法访问

部署应用运行正常
Weblogic服务器各Server服务及部署的Web应用运行正常,网页无法访问


查看服务器日志:
####<Jul 21, 2017 4:32:07 PM CST> <Notice> <Server> <expense1> <expense> <DynamicListenThread[Default]> <<WLS Kernel>> <> <> <1500625927388> <BEA-002615> <After having failed to listen, the server is now listening on channel "Default" on 10.1.130.30:7003.> 
####<Jul 21, 2017 4:32:07 PM CST> <Critical> <Server> <expense1> <expense> <DynamicListenThread[Default]> <<WLS Kernel>> <> <> <1500625927391> <BEA-002616> <Failed to listen on channel "Default" on 10.1.130.30:7003, failure count: 1, failing for 0 seconds, java.net.SocketException: Too many open files> 
####<Jul 21, 2017 4:32:08 PM CST> <Critical> <Server> <expense1> <expense> <DynamicListenThread[Default]> <<WLS Kernel>> <> <> <1500625928517> <BEA-002616> <Failed to listen on channel "Default" on 10.1.130.30:7003, failure count: 2, failing for 1 seconds, java.net.SocketException: Too many open files> 
####<Jul 21, 2017 4:32:08 PM CST> <Error> <HTTP> <expense1> <expense> <[ACTIVE] ExecuteThread: '7' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1500625928572> <BEA-101017> <[[email protected][app:expense_app module:webRoot path:/expense spec-version:null]] Root cause of ServletException.> 
####<Jul 21, 2017 4:32:08 PM CST> <Error> <HTTP> <expense1> <expense> <[ACTIVE] ExecuteThread: '7' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1500625928573> <BEA-101107> <[[email protected][app:expense_app module:webRoot path:/expense spec-version:null]] Problem occurred while serving the error page.> 
####<Jul 21, 2017 4:32:08 PM CST> <Error> <HTTP> <expense1> <expense> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1500625928936> <BEA-101017> <[[email protected][app:expense_app module:webRoot path:/expense spec-version:null]] Root cause of ServletException.> 
####<Jul 21, 2017 4:32:08 PM CST> <Error> <HTTP> <expense1> <expense> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1500625928937> <BEA-101107> <[[email protected][app:expense_app module:webRoot path:/expense spec-version:null]] Problem occurred while serving the error page.> 
####<Jul 21, 2017 4:32:09 PM CST> <Error> <HTTP> <expense1> <expense> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1500625929846> <BEA-101017> <[[email protected][app:expense_app module:webRoot path:/expense spec-version:null]] Root cause of ServletException.> 
####<Jul 21, 2017 4:32:09 PM CST> <Error> <HTTP> <expense1> <expense> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1500625929847> <BEA-101107> <[[email protected][app:expense_app module:webRoot path:/expense spec-version:null]] Problem occurred while serving the error page.> 
####<Jul 21, 2017 4:32:10 PM CST> <Critical> <Server> <expense1> <expense> <DynamicListenThread[Default]> <<WLS Kernel>> <> <> <1500625930520> <BEA-002616> <Failed to listen on channel "Default" on 10.1.130.30:7003, failure count: 3, failing for 3 seconds, java.net.SocketException: Too many open files
####<Jul 21, 2017 4:32:11 PM CST> <Error> <HTTP> <expense1> <expense> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1500625931751> <BEA-101083> <Connection failure.> 
####<Jul 21, 2017 4:32:11 PM CST> <Error> <HTTP> <expense1> <expense> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1500625931751> <BEA-101083> <Connection failure.> 
####<Jul 21, 2017 4:32:11 PM CST> <Error> <HTTP> <expense1> <expense> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1500625931752> <BEA-101083> <Connection failure.> 
####<Jul 21, 2017 4:32:11 PM CST> <Error> <HTTP> <expense1> <expense> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1500625931752> <BEA-101083> <Connection failure.> 
####<Jul 21, 2017 4:32:11 PM CST> <Error> <HTTP> <expense1> <expense> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1500625931753> <BEA-101083> <Connection failure.> 
####<Jul 21, 2017 4:32:11 PM CST> <Error> <HTTP> <expense1> <expense> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1500625931753> <BEA-101083> <Connection failure.> 
####<Jul 21, 2017 4:32:11 PM CST> <Error> <HTTP> <expense1> <expense> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1500625931753> <BEA-101083> <Connection failure.> 
####<Jul 21, 2017 4:32:11 PM CST> <Error> <HTTP> <expense1> <expense> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1500625931754> <BEA-101083> <Connection failure.> 
####<Jul 21, 2017 4:32:11 PM CST> <Error> <HTTP> <expense1> <expense> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1500625931754> <BEA-101083> <Connection failure.> 
####<Jul 21, 2017 4:32:11 PM CST> <Error> <HTTP> <expense1> <expense> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1500625931755> <BEA-101083> <Connection failure.> 
####<Jul 21, 2017 4:32:11 PM CST> <Error> <HTTP> <expense1> <expense> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1500625931755> <BEA-101083> <Connection failure.> 
####<Jul 21, 2017 4:32:11 PM CST> <Error> <HTTP> <expense1> <expense> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1500625931755> <BEA-101083> <Connection failure.> 


通过ulimit -a 查看限制情况

Weblogic服务器各Server服务及部署的Web应用运行正常,网页无法访问

综上对问题进行分析:系统对打开文件数的限制导致SocketException,致使WebLogic不能正常服务。在unix系统中,socket连接是以文件的形式存在的,所以socket连接受到系统对打开文件数的限制。当前,unix系统对程序打开文件的限制数是1024,且WebLogic的日志记录方式是无限增长,随着日志文件的日益增多,WebLogic打开的文件数越来越多,当文件打开总数达到1024时,系统不再允许WebLogic打开文件(包括socket连接),就出现了上面的问题。出现无法打开文件的情况,是unix打开文件数量设置受限,将参数调整,修改open file的设置,作如下调整,

在/etc/ security/ limits.conf文件末添加:

*    soft     nofile     4096 
*    hard    nofile     4096


问题解决!