簡體   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