【问题标题】:Initialize the socketIO too slow, using python socketIO-client package初始化socketIO太慢,使用python socketIO-client包
【发布时间】:2016-06-28 18:58:55
【问题描述】:

我在 python 中使用 socketIO-client 包来测试我的服务器代码。 它是一个简单的客户端,但运行以下行总是需要大约 1 分钟:

socketIO = SocketIO('localhost',3003)

不知道怎么解决这个问题?

我使用 eventlet 并没有在虚拟环境中安装 socketIO-client。 会不会导致这个问题?

from socketIO_client import SocketIO, BaseNamespace
from datetime import datetime

Devices = {}

temp_time = datetime.now()

class Namespace(BaseNamespace):
    def on_connect(self):
        print('[Connected]')
        for device in Devices:
            self.emit('register', device)
            time.sleep(1)

def funcA():
    do something

def funcB():
    do something

print '1:', datetime.now()-temp_time
socketIO = SocketIO('localhost', 3003)
print '2:', datetime.now()-temp_time
socketIO.define(Namespace)

socketIO.on('eventA', funcA)
socketIO.on('eventB', funcB)
socketIO.wait()

客户端部分的输出:

1: 0:00:00.000074
DEBUG:root:localhost:3003/socket.io [transport selected] xhr-polling
DEBUG:root:localhost:3003/socket.io [heartbeat reset]
2: 0:01:00.019828
DEBUG:root:localhost:3003/socket.io [socket.io packet received] 0
[Connected]

【问题讨论】:

    标签: python socket.io client


    【解决方案1】:

    我的 Python 套接字 ioclient 非常快地连接到外部 node.js 服务器。 这可能是路由/DNS 问题 本地主机有时会表现出奇怪的路由行为。 使用 127.0.0.1 而不是 localhost 作为 url 来消除路由 /DNS 超时

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-12-29
      • 2018-07-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多