繁体   English   中英

使用Python Twisted Websocket客户端建立与服务器的并发Websocket连接

[英]Establish Concurrent Websocket Connections to server Using Python Twisted Websocket Client

我正在尝试使用Python Twisted Authobhan Websocket Client打开客户端的并发Websocket连接(每台机器有60k端口限制),但是使用以下代码打开不超过20k的连接:

from autobahn.twisted.websocket import WebSocketClientProtocol, WebSocketClientFactory

class WebSocketClient(WebSocketClientProtocol):

    def _handshake_request(self):
        pass

    def onOpen(self):
        self._handshake_request()

    def onConnect(self, response):
        pass
    def onMessage(self,data):
        pass


class WebSocketFactory(WebSocketClientFactory):

    """WebSocketClient Factory"""

    protocol = WebSocketClient

if __name__ == '__main__':

    factory = WebSocketFactory()

    ##### Note here. ######
    for _ in range(num_connections):
        reactor.connectTCP(ws_url, ws_port, factory)
    #####

    reactor.run()

我已在循环中使用“ reactor.connectTCP”,这是使用Twisted打开并发Websocket连接的正确方法吗?

让我知道。

您需要执行更少的并发连接尝试。 您可能可以维持20k或更多的连接,但无法同时建立所有连接。

一次将自己限制为几十或一百。 您可能要使用twisted.internet.task.cooperate

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM