【问题标题】:How to know if a connection is being closed is abandaned or not?如何知道正在关闭的连接是否被放弃?
【发布时间】:2013-01-28 11:35:55
【问题描述】:

我正在使用 Tomcat 连接池,并在 roder 中设置了属性 removeAbandoned=true 和 removeAbandonedTimeout=60,以确保应该放弃任何花费超过 60 秒的连接。

现在,我想通知用户一个连接是否被关闭,因为它是一个废弃的连接。

谁能帮帮我。

在此之间,我知道我可以设置拦截器,该拦截器将在该连接的每个操作上调用,但在拦截器内部,我如何知道正在关闭的连接是否是因为它被放弃了连接。

有人可以帮我吗?

【问题讨论】:

    标签: tomcat timeout connection-pooling


    【解决方案1】:

    当 removeAbandoned 设置为 true 时,连接将从连接池中删除。这与最终用户在应用程序的 UI 上看到的内容是无缝的,因为他的请求将由与连接池不同的连接提供服务。

    但是,有一个属性可以用来记录放弃的连接(如果这是您需要的) logAbandoned =真

    这将在日志中记录被放弃的连接。

    此外,可以覆盖拦截器以实现自定义体验。

    【讨论】:

    • 一件事 logAbandoned 不是我正在寻找的东西,因为现在我对知道相同的原因不感兴趣。另外,您说请求将由不同的连接提供服务,您确定吗,因为我已经阅读了文档,但它没有说这样的话。它只是说一旦超过放弃的超时,连接将被关闭。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-04-05
    • 1970-01-01
    • 1970-01-01
    • 2012-11-17
    • 2023-04-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多