python_websocket长连接压测


from threadpool import ThreadPool, makeRequests
import websocket
import threading


def on_message(ws, message):
print(message)


def on_error(ws, error):
print(error)


def on_close(ws):
print("### closed ###")


def on_open(ws):
def send_trhead():
while True:
time.sleep(5)
ws.send("test")

t = threading.Thread(target=send_trhead)
t.start()


def connect(a):
time.sleep(a % 1)
websocket.enableTrace(True)
ws = websocket.WebSocketApp("压测地址",
on_message=on_message,
on_error=on_error,
on_close=on_close)
ws.on_open = on_open
ws.run_forever(ping_interval=60, ping_timeout=5)
return ws


if __name__ == "__main__":
pool = ThreadPool(100)
test = list()
for i in range(100):
test.append(i)
result = makeRequests(connect, test)
[pool.putRequest(req) for req in result]
pool.wait()


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM