集群环境连接池配置改进

14 views
Skip to first unread message

goes...@gmail.com

unread,
May 4, 2009, 9:40:25 PM5/4/09
to goeswind
昨晚分析weblogic日志,怀疑跟weblogic连接池配置集中在代理服务器上(代理服务器还要集中接收用户http请求),在访问量一大,三个
节点都要频繁访问连接池,会导致网络访问繁忙,weblogic响应不过来,造成连接无法及时释放。

所以,今早将以前集中在118(代理服务器上的连接池),转到114、115、196三个节点配置各自的连接池,可以减少因为网络访问过频繁的问题。


以下是weblogic日志,网站访问不了前后,出现大量下面错误:

####<2009-5-1 下午07时42分17秒 CST> <Error> <WebLogicServer> <bl460-02>
<Server> <[STANDBY] ExecuteThread: '402' for queue:
'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <>
<1241178137016> <BEA-000337> <[STUCK] ExecuteThread: '358' for queue:
'weblogic.kernel.Default (self-tuning)' has been busy for "625"
seconds working on the request "Http Request: /portal/jsp/job/
grinfo.jsp", which is more than the configured time
(StuckThreadMaxTime) of "600" seconds. Stack trace:
Thread-608 "[STUCK] ExecuteThread: '358' for queue:
'weblogic.kernel.Default (self-tuning)'" <alive, in native, waiting,
priority=1, DAEMON> {
-- Waiting for notification on: weblogic.rjvm.ResponseImpl@240f456
[fat lock]
jrockit.vm.Threads.waitForSignal(Native Method)
java.lang.Object.wait(Native Method)
weblogic.rjvm.ResponseImpl.waitForData(ResponseImpl.java:83)
^-- Lock released while waiting: weblogic.rjvm.ResponseImpl@240f456
[fat lock]
weblogic.rjvm.ResponseImpl.getTxContext(ResponseImpl.java:114)
weblogic.rjvm.BasicOutboundRequest.sendReceive
(BasicOutboundRequest.java:108)
weblogic.rmi.cluster.ClusterableRemoteRef.invoke
(ClusterableRemoteRef.java:335)
weblogic.rmi.cluster.ClusterableRemoteRef.invoke
(ClusterableRemoteRef.java:235)
weblogic.jndi.internal.ServerNamingNode_1000_WLStub.lookup(Unknown
Source)
weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:
379)
weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:
367)
javax.naming.InitialContext.lookup(InitialContext.java:351)
org.apache.torque.dsfactory.JndiDataSourceFactory.getDataSource
(JndiDataSourceFactory.java:106)
org.apache.torque.Torque.getConnection(Torque.java:932)
com.foresee.util.database.ConnectionManager.getConnection
(ConnectionManager.java:75)
com.foresee.util.database.ConnectionManager.getConnection
(ConnectionManager.java:92)
com.foresee.siportal.Job.JobPerson.getWebGrqzxx(JobPerson.java:
245)
jsp_servlet._jsp._job.__grinfo._jspService(__grinfo.java:143)
weblogic.servlet.jsp.JspBase.service(JspBase.java:34)
weblogic.servlet.internal.StubSecurityHelper
$ServletServiceAction.run(StubSecurityHelper.java:226)
weblogic.servlet.internal.StubSecurityHelper.invokeServlet
(StubSecurityHelper.java:124)
weblogic.servlet.internal.ServletStubImpl.execute
(ServletStubImpl.java:230)
weblogic.servlet.internal.ServletStubImpl.execute
(ServletStubImpl.java:175)
weblogic.servlet.internal.WebAppServletContext
$ServletInvocationAction.run(WebAppServletContext.java:3370)
weblogic.security.acl.internal.AuthenticatedSubject.doAs
(AuthenticatedSubject.java:321)
weblogic.security.service.SecurityManager.runAs(Unknown Source)
weblogic.servlet.internal.WebAppServletContext.securedExecute
(WebAppServletContext.java:2117)
weblogic.servlet.internal.WebAppServletContext.execute
(WebAppServletContext.java:2023)
weblogic.servlet.internal.ServletRequestImpl.run
(ServletRequestImpl.java:1359)
weblogic.work.ExecuteThread.execute(ExecuteThread.java:200)
weblogic.work.ExecuteThread.run(ExecuteThread.java:172)
jrockit.vm.RNI.c2java(Native Method)
}
>
####<2009-5-1 下午07时42分17秒 CST> <Error> <WebLogicServer> <bl460-02>
<Server> <[STANDBY] ExecuteThread: '402' for queue:
'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <>
<1241178137016> <BEA-000337> <[STUCK] ExecuteThread: '357' for queue:
'weblogic.kernel.Default (self-tuning)' has been busy for "665"
seconds working on the request "Http Request: /portal/jsp/index.jsp",
which is more than the configured time (StuckThreadMaxTime) of "600"
seconds. Stack trace:
Thread-607 "[STUCK] ExecuteThread: '357' for queue:
'weblogic.kernel.Default (self-tuning)'" <alive, in native, waiting,
priority=1, DAEMON> {
-- Waiting for notification on: weblogic.rjvm.ResponseImpl@26e350a
[fat lock]
jrockit.vm.Threads.waitForSignal(Native Method)
java.lang.Object.wait(Native Method)
weblogic.rjvm.ResponseImpl.waitForData(ResponseImpl.java:83)
^-- Lock released while waiting: weblogic.rjvm.ResponseImpl@26e350a
[fat lock]
weblogic.rjvm.ResponseImpl.getTxContext(ResponseImpl.java:114)
weblogic.rjvm.BasicOutboundRequest.sendReceive
(BasicOutboundRequest.java:108)
weblogic.rmi.cluster.ClusterableRemoteRef.invoke
(ClusterableRemoteRef.java:335)
weblogic.rmi.cluster.ClusterableRemoteRef.invoke
(ClusterableRemoteRef.java:235)
weblogic.jndi.internal.ServerNamingNode_1000_WLStub.lookup(Unknown
Source)
weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:
379)
weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:
367)
javax.naming.InitialContext.lookup(InitialContext.java:351)
org.apache.torque.dsfactory.JndiDataSourceFactory.getDataSource
(JndiDataSourceFactory.java:106)
org.apache.torque.Torque.getConnection(Torque.java:932)
com.foresee.util.database.ConnectionManager.getConnection
(ConnectionManager.java:75)
com.foresee.util.database.BatchConnectionManager.openConnection
(BatchConnectionManager.java:65)
com.foresee.cms.dbms.CategoryManagerImpl.getCategory
(CategoryManagerImpl.java:493)
jsp_servlet._jsp.__index._jspService(__index.java:410)
weblogic.servlet.jsp.JspBase.service(JspBase.java:34)
weblogic.servlet.internal.StubSecurityHelper
$ServletServiceAction.run(StubSecurityHelper.java:226)
weblogic.servlet.internal.StubSecurityHelper.invokeServlet
(StubSecurityHelper.java:124)
weblogic.servlet.internal.ServletStubImpl.execute
(ServletStubImpl.java:230)
weblogic.servlet.internal.ServletStubImpl.execute
(ServletStubImpl.java:175)
weblogic.servlet.internal.WebAppServletContext
$ServletInvocationAction.run(WebAppServletContext.java:3370)
weblogic.security.acl.internal.AuthenticatedSubject.doAs
(AuthenticatedSubject.java:321)
weblogic.security.service.SecurityManager.runAs(Unknown Source)
weblogic.servlet.internal.WebAppServletContext.securedExecute
(WebAppServletContext.java:2117)
weblogic.servlet.internal.WebAppServletContext.execute
(WebAppServletContext.java:2023)
weblogic.servlet.internal.ServletRequestImpl.run
(ServletRequestImpl.java:1359)
weblogic.work.ExecuteThread.execute(ExecuteThread.java:200)
weblogic.work.ExecuteThread.run(ExecuteThread.java:172)
jrockit.vm.RNI.c2java(Native Method)
}
Reply all
Reply to author
Forward
0 new messages