gpt4 book ai didi

Java 应用程序未关闭连接

转载 作者:行者123 更新时间:2023-12-02 06:57:55 24 4
gpt4 key购买 nike

我正在开发一个相当大的 Java 应用程序,它从不同的类进行 HTTP 调用来获取数据。它会运行一段时间,并在运行结束时等待几个小时,直到再次开始运行。 (不幸的是,为什么这样做超出了这里的重点,并且超出了我的控制范围。)

我遇到了一个问题,因为在运行之间一些 HTTP 连接保持打开状态(我用 netstat -p |grep <pid> 检查过)。我已经浏览了代码,看看我们应该在哪里关闭连接,但没有,也无法找到任何东西。大多数请求的类型为 Unmarshaller.unmarshal(url) .

所以我的问题是:有没有一种方法可以在运行结束时检查该应用程序维护的特定端口上的连接并关闭它们?

最佳答案

部分问题在于 HTTP 规范本身。我怀疑连接不会立即关闭,因为规范不保证每个数据包的传送时间。

它可能是一个 Web 服务器配置,告诉它保持连接 Activity 多长时间。我会调查一下。也许您可以使用 Fiddler 甚至 Chrome 开发人员工具等工具来查看 HTTP header 并查看 keep-alive header 设置为:

http://en.wikipedia.org/wiki/HTTP_persistent_connection

关于Java 应用程序未关闭连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17064925/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com