【问题标题】:JDBC Connection closed by peer (weird)JDBC连接被对等方关闭(奇怪)
【发布时间】:2009-07-21 09:16:09
【问题描述】:

我的两个应用程序遇到了一个奇怪的问题。 设置如下:

两个tomcat/java应用,运行在同一个网络,连接到 相同的 MS-SQL-Server。一个应用程序,它恰好按顺序位于 DMZ 中 可从 Internet 访问,用于生成“jdbc Connection closed 不定期出现的异常。

在 tomcat 中重新启动应用程序可以解决问题。奇怪的是, 其他应用程序没有这种习惯,并且所有相关日志 (即 Windows 事件日志、SQL-Serverlog、网络监控)不显示任何 问题。只有我的应用程序日志的连接被对等的东西关闭...

我还检查了网络设置,连接没有中断 月。作为最后的手段,我今晚将重新启动整个服务器并安装wireshark 为了记录网络流量...

有人知道是什么原因造成的吗?

提前谢谢

      K

【问题讨论】:

    标签: java jdbc database-connection


    【解决方案1】:

    大多数防火墙(形成 dmz)会丢弃不活动的连接。这个问题很常见。

    您必须将连接池(最小大小)设置为 0 或 1,具体取决于您的应用服务器。 (凭记忆)WebSphere 建议您将其设置为 1。

    【讨论】:

      【解决方案2】:

      有问题的应用程序和数据库之间有什么关系?由于它在 DMZ 中,我怀疑您有路由器。如果应用程序保持与数据库的连接打开,但该连接在一段时间内保持安静(例如,一夜之间?),那么在没有流量的情况下,路由器可能关闭该连接。我以前见过这样的行为。

      我依稀记得Release It中详述的这样一个场景。

      您是否使用数据库池,并在连接从池中分发时对其进行检查?如果是上面的问题,不妨看看Apache DBCP

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-09-22
        • 2018-07-31
        • 2015-01-19
        • 2017-12-03
        • 2016-08-28
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多