[英]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.