gpt4 book ai didi

java.net.ConnectException : Connection refused: connect under load

转载 作者:行者123 更新时间:2023-12-01 05:29:47 24 4
gpt4 key购买 nike

我正在一台全新的 Windows 2008 64 位计算机上运行负载测试。加载器是一个 Java Applet,它使用 HttpURLConnection 将请求发送到正在监听 ServerSocket.accept() 的服务器,加载器和服务器都在同一台计算机上运行。

在我的旧 Windows 2003 服务器上,我能够使用此配置加载超过 1000 个用户。但是,对于新服务器,当加载大约 400 个 session 时,加载器开始抛出以下异常:

java.net.ConnectException: Connection refused: connect
at java.net.DualStackPlainSocketImpl.connect0(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:69)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:337)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:198)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:180)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:157)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:391)
at java.net.Socket.connect(Socket.java:579)
at java.net.Socket.connect(Socket.java:528)
at sun.net.NetworkClient.doConnect(NetworkClient.java:180)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:388)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:483)
at sun.net.www.http.HttpClient.<init>(HttpClient.java:213)
at sun.net.www.http.HttpClient.New(HttpClient.java:300)
at sun.net.www.http.HttpClient.New(HttpClient.java:316)
at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:992)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:928)
at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:846)
at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLConnection.java:1087)
...

服务器或计算机似乎耗尽了某些资源。ServerSocket 积压设置为 256,看起来并没有耗尽。机器CPU利用率低于10%,服务器有充足的可用内存。使用 Visual VM 观察客户端和服务器,看起来在出现问题时两者都运行正常。有什么想法吗?

最佳答案

也许服务器由于缺乏其他资源而拒绝连接?每个HTTP请求都需要打开TCP连接,在Linux下使用"file"(我不是Linux专家,所以如果我错了,请纠正我)。因此,有时 CPU 和内存较低,但 HTTP 服务器会打开数百个文件,最终导致失败,任何进一步的请求都将被拒绝。

我不确定这是否也适用于 Windows,但请尝试一下。

关于java.net.ConnectException : Connection refused: connect under load,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9161119/

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