`
yanbingwei_13
  • 浏览: 22646 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Too many open files:weblogic连接池泄漏问题

阅读更多

问题描述:

java.net.SocketException:打开端口 60,028 上服务器 /172.17.138.41 的套接字时出错,消息为:Too many open files。 ERRORCODE=-4499, SQLSTATE=08001

问题定位:

1. 在AIX命令行输入'netstat -an|grep 60028|wc -l', 发现数据库连接数达到连接池最大限制

2. 进入weblogic控制台,打开左侧菜单,配置连接池监控:

[Services] -> [JDBC] -> [Data Sources] -> [JDBC Data Source-0]

3. 打开标签项[Configration]下的[Diagnostics],选中以下配置项:

Profile Connection Usage

Profile Connection Reservation Wait

Profile Connection Leak

Profile Statement Usage

3. 保存weblogic配置生效,查看weblogic的domain日志[domain/servers/AdminServer/logs/AdminServer.log]发现:

####<2012-5-30 上午06时56分35秒 CST> <Warning> <JDBC> <ppcsonl_svc> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> < > <> <1338332195484> <BEA-001153> <Forcibly releasing inactive connection "weblogic.jdbc.wrapper.PoolConnection_com_ibm_db2_jcc_t4_b@a2531" back into the connection pool "JDBC_CIA BKEDB", currently reserved by: java.lang.Exception at weblogic.jdbc.common.internal.ConnectionEnv.setup(ConnectionEnv.java:308) at weblogic.common.resourcepool.ResourcePoolImpl.reserveResource(ResourcePoolImpl.java:314) at weblogic.common.resourcepool.ResourcePoolImpl.reserveResource(ResourcePoolImpl.java:292) at weblogic.jdbc.common.internal.ConnectionPool.reserve(ConnectionPool.java:425) at weblogic.jdbc.common.internal.ConnectionPool.reserve(ConnectionPool.java:316) at weblogic.jdbc.common.internal.ConnectionPoolManager.reserve(ConnectionPoolManager.java:93) at weblogic.jdbc.common.internal.ConnectionPoolManager.reserve(ConnectionPoolManager.java:106) at weblogic.jdbc.pool.Driver.connect(Driver.java:149) at weblogic.jdbc.jts.Driver.getNonTxConnection(Driver.java:642) at weblogic.jdbc.jts.Driver.connect(Driver.java:124) at weblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSource.java:338) at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:111) at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:77) at cia.broker.common.jdbc.DBAccessor.updateTblPara02(DBAccessor.java:929) at cia.broker.quartz.ccb.ctrl.CCBBatchCollectProcCtrl.execute(CCBBatchCollectProcCtrl.java:156) at sun.reflect.GeneratedMethodAccessor199.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37) at java.lang.reflect.Method.invoke(Method.java:599)

3. 检查domain日志中的红色部分代码,发现数据库连接未释放,修改代码后问题解决

分享到:
评论

相关推荐

    AIX关于Weblogic的报错_Too_many_open_files_的处理

    ### AIX关于Weblogic的报错“Too many open files”的处理 #### 背景与问题概述 在AIX环境中部署Weblogic时,可能会遇到一个常见的错误提示:“Too many open files”。这一错误提示通常出现在系统资源限制不当的...

    weblogic连接池配置数据库断掉重连的问题

    * 连接保留超时(Connection Reserve Timeout):指定在保留缓冲池连接的调用超时之前的秒数。 * 重试创建连接的频率(Connection Creation Retry Frequency):指定尝试建立与数据库的连接的间隔秒数。 * 钝化连接...

    weblogic连接池配置

    weblogic连接池配置说明, weblogic8.1连接池配置及简单优化

    weblogic连接池日志监控

    实时获取weblogic连接池使用情况;下载之后修改JmxWeblogicMonitor类中port、hostname、userName、passWord属性值(对应自己实际值);有注释很简单,不懂留言!

    weblogic数据源连接池

    - 连接池管理:WebLogic提供了丰富的连接池管理功能,如监控连接状态,自动回收空闲过久的连接,以及在连接耗尽时自动扩展连接池大小。 - 故障恢复:如果连接发生异常,WebLogic会尝试自动重连,提高系统的健壮性。...

    weblogic配置sql数据连接池

    SQL数据连接池是WebLogic Server中的一个重要组件,用于优化数据库连接的创建、分配和管理,从而提高系统性能和资源利用率。本文将详细介绍如何在WebLogic中配置SQL数据连接池。 一、数据连接池的作用 数据连接池是...

    webLogic8配置连接池步骤

    在WebLogic8中配置连接池和JMS组件是部署和管理Java应用程序的关键步骤,特别是对于那些依赖于数据库和消息传递服务的应用。以下是详细的配置过程: 1. **配置JDBC连接池**: - 首先,通过访问`...

    在WebLogic中建立数据库连接池与数据源及利用JBuilder进行测试

    ### 在WebLogic中建立数据库连接池与数据源及利用JBuilder进行测试 #### 摘要 本文将详细介绍如何在WebLogic Platform 8.1控制台中设置Oracle 9i、SQL Server 和 JDataStore 数据库连接池以及如何在应用程序中获取...

    java应用程序JNDI方式使用weblogic连接池的方法.pdf

    Java应用程序通过JNDI(Java Naming and Directory Interface)方式使用WebLogic连接池是一种常见的实践,尤其是在企业级应用中。WebLogic Server是一个强大的Java EE应用服务器,它提供了丰富的资源管理功能,包括...

    weblogic日常巡检,问题排查

    ### WebLogic 日常巡检与问题排查 #### 引言 WebLogic作为一款广泛使用的Java应用服务器,在企业级应用环境中扮演着重要的角色。为了确保WebLogic服务器能够稳定、高效地运行,定期进行健康检查(巡检)是非常必要...

    基于Weblogic连接池获取SQL语句的实现.pdf

    针对以上问题,胡立田先生在其文章《基于Weblogic连接池获取SQL语句的实现》中提出了一种不用修改程序而直接获取系统执行SQL语句的方法。该方法通过改变Java数据库连接(JDBC)的驱动,利用适配器模式对数据库连接的...

    weblogic weblogic weblogic

    6. **性能优化**:WebLogic提供了缓存机制、连接池、线程池等性能优化策略,以提高应用响应速度和资源利用效率。 7. **集成与互操作性**:WebLogic能够与Oracle数据库、其他中间件产品(如Oracle Coherence)以及...

    Weblogic监控jndi泄露连接的方法.doc

    总结来说,解决 WebLogic 中 JNDI 泄露连接问题,主要涉及两方面:一是优化连接池配置,设置合理的“非活动连接超时”,以确保无用连接能及时释放;二是通过开启诊断日志,结合系统操作,定位出导致泄露的具体代码,...

Global site tag (gtag.js) - Google Analytics