8

我正在使用 python 2.7 中的多处理进行简单的服务器/客户端连接。
当我在单独的 python shell 中运行客户端代码时,连接成功,但是当我将应用程序作为一个整体运行时,我得到“socket.error: [Errno 111] Connection denied”。

这是回溯:

Traceback (most recent call last):
  File "./kaboom", line 276, in <module>
    sequence.run(testEnv)
  File "/e/m/amoreau/test_edit/kaboom/src/kbmSequence.py", line 271, in run
    if testEnv.open() != SUCCESS:
  File "/e/m/amoreau/test_edit/kaboom/src/kbmTestEnv.py", line 518, in open
    queueManager = resultsClient.QueueServerClient()
  File "/e/m/amoreau/test_edit/kaboom/resultsClient.py", line 15, in QueueServerClient
    manager.connect()
  File "/usr/lib64/python2.6/multiprocessing/managers.py", line 474, in connect
    conn = Client(self._address, authkey=self._authkey)
  File "/usr/lib64/python2.6/multiprocessing/connection.py", line 143, in Client
    c = SocketClient(address)
  File "/usr/lib64/python2.6/multiprocessing/connection.py", line 263, in SocketClient
    s.connect(address)
  File "<string>", line 1, in connect
socket.error: [Errno 111] Connection refused  

为什么会这样?我已禁用所有防火墙。

4

1 回答 1

12

你好,我刚遇到这个问题。我知道这是一个旧答案,但我在相关问题中找到了答案。它在下面列出。问题是客户端在服务器创建套接字之前尝试连接到服务器。

嗯,这就是我的情况。将服务器派生到另一个进程所需的时间比客户端尝试连接的时间要长一点。为了测试,我在我的客户中打了一个睡眠电话,果然,没有更多的错误。

Python 套接字错误 - 连接被拒绝

于 2017-05-30T00:40:24.070 回答