Discuss / Python / ConnectionRefusedError: [WinError 10061] 由于目标计算机积极拒绝,无法连接

ConnectionRefusedError: [WinError 10061] 由于目标计算机积极拒绝,无法连接

Topic source

T_V对对对

#1 Created at ... [Delete] [Delete and Lock User]

有点郁闷,查了百度谷歌论坛stackoverflow都没用,唉,小白看不懂,求助

C:\Users\ACER\AppData\Local\Programs\Python\Python35-32\python.exe D:/somethingnew/task_worker.py
Connect to server 127.0.0.1...
Traceback (most recent call last):
  File "D:/somethingnew/task_worker.py", line 18, in <module>
    m.connect()
  File "C:\Users\ACER\AppData\Local\Programs\Python\Python35-32\lib\multiprocessing\managers.py", line 455, in connect
    conn = Client(self._address, authkey=self._authkey)
  File "C:\Users\ACER\AppData\Local\Programs\Python\Python35-32\lib\multiprocessing\connection.py", line 487, in Client
    c = SocketClient(address)
  File "C:\Users\ACER\AppData\Local\Programs\Python\Python35-32\lib\multiprocessing\connection.py", line 614, in SocketClient
    s.connect(address)
ConnectionRefusedError: [WinError 10061] 由于目标计算机积极拒绝,无法连接。

Process finished with exit code 1

你是不是先启动的 task_worker 啊?这样的话,没有 task_master 可供连接就会报错。 或者你启动 task_master 之后在10秒内没有启动 task_worker,master 超时自动退出那还是连不上。

蓝萧Bingle

#3 Created at ... [Delete] [Delete and Lock User]

把防火墙和一些电脑管家,360安全卫士全卸载了试试,这些软件会阻止你进行网络通信,因为你的另外一台机器的链接请求会被这些软件视作不可信来源而屏蔽。

这个是因为你要连接到服务器(task_master)的那台电脑上去从QUEUE里取数,但是无法连接到目标服务器的指定端口。 导致问题的原因可能有以下几种:

1.如果你在同一台电脑上分别运行master程序和worker程序,请检查本地防火墙或者XX卫士之类。

2.如果你在不同电脑上运行master程序和worker程序,请把你的worker程序的server_ip = "10.211.55.2" 改成你运行master程序电脑的真实IP地址,而不要用本地回环地址“127.0.0.1”这样你的worker程序会尝试去连接你的本机而不是服务器

3.检查master和worker内关于端口和密钥的配置是否相同: m = QueueManager(address=(server_ip,1234),authkey=b"abc")

4.如果不运行服务端master程序,则服务器不会打开并监听你指定的服务端口,这样worker自然无法连接到服务端master上去,请确保先运行master程序再运行worker程序。

胡启根

#5 Created at ... [Delete] [Delete and Lock User]

我刚刚也出现了这个错误,后来发现是task_worker的端口号写错了,你可以看一下。

Hyper-L

#6 Created at ... [Delete] [Delete and Lock User]

这个问题的原因是你需要先运行一个服务进程在某个端口上,比如:

m = QueueManager(address=('127.0.0.1', 10000), authkey=b'abc')

s = m.get_server()

s.serve_forever()

,然后才能用一个任务进程去connect。


  • 1

Reply