點擊上方“IT那活兒”公眾號,關注后了解更多內容,不管IT什么活兒,干就完了!!!
從錯誤日志分析,錯誤原因的數據庫連接池的連接達到最大設定值,導致系統無法獲取新的數據庫連接導致。
數據庫連接池連接最大值設置為200,如沒有特殊情況發生,系統不會出現連接數不足的現象。按以往的經驗造成連接數不足現象的原因有以下幾個:
通過排查該應用系統各個層面的影響因素,最終將故障原因定位在連接池上。
1. 首先檢查數據庫是否有死鎖
[7/27/14 15:51:54:938 GMT+08:00] 000000db AcfCoreServle E com.ursa.acf.plugins.todomessage.impl.DealReadToDoMsgMgr list error.plugin.user.error_sqlerror
com.ursa.acf.plugins.user.UserPluginException: error.plugin.user.error_sqlerror
at com.ursa.acf.plugins.user.ursaimpl.UrsaUser.j(UrsaUser.java:646)
at com.ursa.acf.plugins.user.ursaimpl.UrsaUser. (UrsaUser.java:53)
at com.ursa.acf.plugins.user.ursaimpl.UrsaUserManager.getUser(UrsaUserManager.java:178)
at com.ursa.acf.plugins.user.UserHelper.getUser(UserHelper.java:52)
at com.ursa.acf.plugins.todomessage.impl.DealReadToDoMsgMgr.list(DealReadToDoMsgMgr.java:132)
at com.itss.xz.test.login.AcfPanel_DBSY.setPanel(AcfPanel_DBSY.java:265)
at com.ursa.acf.plugins.acfpage.acfpanel.AcfPanelShow.acfShow(AcfPanelShow.java:65)
at com.ursa.acf.plugins.acfshow.AcfShow.acfExecute(AcfShow.java:38)
at com.ursa.acf.core.servlet.AcfCoreAction.execute(AcfCoreAction.java:62)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:575)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:668)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1147)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:722)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:449)
at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:178)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:125)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:92)
at com.ursa.acf.core.EncodingFilter.doFilter(EncodingFilter.java:46)
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:192)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:89)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:919)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1016)
at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:87)
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:883)
at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1659)
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:195)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:452)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:511)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:305)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.java:276)
at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminators(NewConnectionInitialReadCallback.java:214)
at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:113)
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
at com.ibm.io.async.AsyncChannelFuture$1.run(AsyncChannelFuture.java:205)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1648)
Caused by: org.apache.commons.dbcp.SQLNestedException: Cannot get a connection, pool error Timeout waiting for idle object
at org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:114)
at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1044)
at com.ursa.acf.component.datasource.impl.StrutsDSManager.getConnection(StrutsDSManager.java:107)
at com.ursa.acf.component.datasource.DatabaseHelper.getConnection(DatabaseHelper.java:42)
at com.ursa.acf.plugins.user.ursaimpl.UrsaUser.j(UrsaUser.java:629)
... 39 more
Caused by: java.util.NoSuchElementException: Timeout waiting for idle object
at org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:1144)
at org.apache.commons.dbcp.AbandonedObjectPool.borrowObject(AbandonedObjectPool.java:79)
at org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:106)
... 43 more
[7/28/14 10:41:32:109 GMT+08:00] 00004676 filter E com.ibm.ws.webcontainer.filter.FilterInstanceWrapper service SRVE8109W: Uncaught exception thrown by filter EncodingFilter: java.io.FileNotFoundException: SRVE0190E: File not found: /xzpage/bjyc/fs/resources/styles/ursadefault.css
at com.ibm.ws.webcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:443)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:125)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:92)
at com.ursa.acf.core.EncodingFilter.doFilter(EncodingFilter.java:46)
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:192)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:89)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:919)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1016)
at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3639)
at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:304)
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:950)
at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1659)
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:195)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:452)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:511)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:305)
at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:83)
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204)
at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775)
at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1648)
[7/28/14 8:47:21:557 GMT+08:00] 00000036 filter E com.ibm.ws.webcontainer.filter.FilterInstanceWrapper service SRVE8109W: Uncaught exception thrown by filter EncodingFilter: java.io.FileNotFoundException: SRVE0190E: File not found: /xzdefault.css
at com.ibm.ws.webcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:443)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:125)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:92)
at com.ursa.acf.core.EncodingFilter.doFilter(EncodingFilter.java:46)
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:192)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:89)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:919)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1016)
at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3639)
at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:304)
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:950)
at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1659)
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:195)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:452)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:511)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:305)
at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:83)
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204)
at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775)
at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1648)
應用調用數據庫使用的常連接,意味著即使用戶沒有在做業務的情況下,也一直不釋放而占用著數據庫連接的資源,也會影響別的用戶訪問數據庫。
根據連接池問題,系統優化整改要求如下:
對大數據量操作增加操作日志,以及對可能發生大數據量操作的程序進行以下優化。
A) at com.ursa.acf.core.EncodingFilter.doFilter(EncodingFilter.java:46)
中doFilter(EncodingFilter.java:46)方法中的46行代碼
B) com.ursa.acf.component.datasource.impl.StrutsDSManager.getConnection
(StrutsDSManager.java:107)
中getConnection()方法中的107行代碼
C) com.ursa.acf.component.datasource.DatabaseHelper.getConnection
(DatabaseHelper.java:42)
中getConnection(DatabaseHelper.java:42) 方法中的42行代碼
主要有兩個原因:
強烈建議:如系統后續有升級改造,在資金寬裕的情況下,采用硬件負載均衡設備。
數據抓取內容如下:
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/129315.html
摘要:上海網信辦復測個被約談涉及號店小紅書等近日,上海市網信辦對此前被約談的個開展回頭看復測工作,要求各企業按照整改報告切實做好整改工作。 易盾業務風控周報每周呈報值得關注的安全技術和事件,包括但不限于內容安全、移動安全、業務安全和網絡安全,幫助企業提高警惕,規避這些似小實大、影響業務健康發展的安全風險。 1、上海網信辦復測23個被約談APP 涉及1號店、小紅書等 近日,上海市網信辦對此前被...
摘要:國家網信辦啟動專項行動劍指類違法違規互聯網信息近日,針對網絡生態問題頻發各類有害信息屢禁不止等突出問題,為積極回應民眾關切,國家網信辦啟動網絡生態治理專項行動。中國鐵路總公司官方微博回應網傳信息不實,網站未發生用戶信息泄露。 易盾業務風控周報每周呈報值得關注的安全技術和事件,包括但不限于內容安全、移動安全、業務安全和網絡安全,幫助企業提高警惕,規避這些似小實大、影響業務健康發展的安全風...
摘要:對于該故障的分析,我們要從主從實例相同,但是事務不同的原因入手,該問題猜測與相關,我們針對同步事務的時序做如下分析。接受者被動接收提議者的提議,并記錄和反饋,或學習達成共識的提議。節點將的提案信息發送至組內,仍收到了大多數成員返回。 本文是由愛可生運維團隊出品的「MySQL專欄」系列文章,內容來自于運維團隊一線實戰經驗,涵蓋MySQL各種特性的實踐,優化案例,數據庫架構,HA,監控等...
閱讀 1347·2023-01-11 13:20
閱讀 1686·2023-01-11 13:20
閱讀 1134·2023-01-11 13:20
閱讀 1861·2023-01-11 13:20
閱讀 4104·2023-01-11 13:20
閱讀 2708·2023-01-11 13:20
閱讀 1386·2023-01-11 13:20
閱讀 3599·2023-01-11 13:20