我有一个架构,我使用Apache 2.2来负载平衡4个Tomcat 6.0.26服务器。所有4台服务器都是完全相同的liferay实例,并且在过去几天内正常运行。 我的所有tomcat服务器似乎突然停止并不断抛出以下异常 -
Jun 22, 2015 4:54:42 AM org.apache.jk.common.ChannelSocket processConnection
WARNING: processCallbacks status 2
Jun 22, 2015 4:54:42 AM org.apache.jk.common.ChannelSocket processConnection
WARNING: processCallbacks status 2
Jun 22, 2015 4:54:42 AM org.apache.jk.common.ChannelSocket processConnection
WARNING: processCallbacks status 2
Jun 22, 2015 4:54:42 AM org.apache.jk.common.ChannelSocket processConnection
WARNING: processCallbacks status 2
Jun 22, 2015 10:46:26 AM org.apache.jk.common.ChannelSocket acceptConnections
WARNING: Exception executing accept
java.net.SocketException: Too many open files
at java.net.PlainSocketImpl.socketAccept(Native Method)
at java.net.AbstractPlainSocketImpl.accept(AbstractPlainSocketImpl.java:375)
at java.net.ServerSocket.implAccept(ServerSocket.java:470)
at java.net.ServerSocket.accept(ServerSocket.java:438)
at org.apache.jk.common.ChannelSocket.accept(ChannelSocket.java:312)
at org.apache.jk.common.ChannelSocket.acceptConnections(ChannelSocket.java:666)
at org.apache.jk.common.ChannelSocket$SocketAcceptor.runIt(ChannelSocket.java:877)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
at java.lang.Thread.run(Thread.java:679)
“java.net.SocketException:Too many open files”异常连续抛出无限次,直到服务器内存已满且阈值达到100%。 我找到的唯一解决方案是重启服务器,每12到14小时后就会发生同样的事情。