我有一个多线程的python程序,它会连续打开本地URL的连接(),我已经安装了WAMP并具有sendMessages_mock.php文件在本地进行测试。有时,我得到“[Errno 10061]由于目标机器主动拒绝,所以无法连接”Python:无法建立连接,因为目标机器主动拒绝它
每个线程都会调用此函数。每一秒钟,就会有数百个线程调用这个函数。只为少数线程调用获取此异常。对此有何想法?
def sendMessage(body):
try:
request = Request(url="http://testing.com/sendMessages_mock.php", data=json.dumps(body))
request.add_header('Authorization', 'key=' + CONST.API_KEY)
request.add_header('Content-Type', 'application/json')
response = urlopen(request)
responseData = response.read().decode('utf-8')
except Exception as exceptionErr:
print("Oops! " + str(traceback.format_exc()))
服务器端监听连接,但“listen”调用有backlog - 最大数量的尚未被接受的传入连接请求。当请求队列太大时,服务器TCP堆栈可能会开始拒绝连接。这可能是你所看到的。您可能可以将服务器配置为更大的待办事项,但也可以考虑这是正常的背压,可以让您的客户冷静一点。 – tdelaney