日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

python實(shí)現(xiàn)websocket的客戶(hù)端壓力測(cè)試

系統(tǒng) 2539 0

使用python進(jìn)行websocket的客戶(hù)端壓力測(cè)試,這個(gè)代碼是從github上 找到。然后簡(jiǎn)單修改了下。大神運(yùn)用了進(jìn)程池,以及線(xiàn)程池的內(nèi)容。所以保存下來(lái),學(xué)習(xí)學(xué)習(xí)

然后需要說(shuō)明的是:本次用的python2.7,也嘗試用python3.6,但是老實(shí)出現(xiàn)websocket-client包和python3不能兼容的情況,提示沒(méi)有相關(guān)的方法。所以不得已最后又采用了python2

            
# -*- coding:utf-8 -*-
# __author__ == 'chenmingle'
 
import websocket
import time
import threading
import json
import multiprocessing
import uuid
from threadpool import ThreadPool, makeRequests
 
# 修改成自己的websocket地址
WS_URL = "xxxx"
# 定義進(jìn)程數(shù)
processes = 4
# 定義線(xiàn)程數(shù)(每個(gè)文件可能限制1024個(gè),可以修改fs.file等參數(shù))
thread_num = 700
index = 1
 
 
def on_message(ws, message):
  # print(message)
  pass
 
 
def on_error(ws, error):
  print(error)
  pass
 
 
def on_close(ws):
  # print("### closed ###")
  pass
 
 
def on_open(ws):
  global index
  index = index + 1
 
  def send_thread():
    # 設(shè)置你websocket的內(nèi)容
    # 每隔10秒發(fā)送一下數(shù)據(jù)使鏈接不中斷
    while True:
      ws.send(u'hello服務(wù)器')
      time.sleep(10)
 
  t = threading.Thread(target=send_thread)
  t.start()
 
 
def on_start(num):
  time.sleep(5)
  # websocket.enableTrace(True)
  ws = websocket.WebSocketApp(WS_URL + str(num),
                on_message=on_message,
                on_error=on_error,
                on_close=on_close)
  ws.on_open = on_open
  ws.run_forever()
 
 
def thread_web_socket():
  # 線(xiàn)程池
  pool_list = ThreadPool(thread_num)
  num = list()
  # 設(shè)置開(kāi)啟線(xiàn)程的數(shù)量
  for ir in range(thread_num):
    num.append(ir)
  requests = makeRequests(on_start, num)
  [pool_list.putRequest(req) for req in requests]
  pool_list.wait()
 
 
if __name__ == "__main__":
  # 進(jìn)程池
  pool = multiprocessing.Pool(processes=processes)
  # 設(shè)置開(kāi)啟進(jìn)程的數(shù)量
  for i in xrange(processes):
    pool.apply_async(thread_web_socket)
  pool.close()
  pool.join()
          

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦?。?!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 天峻县| 巧家县| 伊吾县| 阿荣旗| 兴化市| 崇明县| 合肥市| 蕲春县| 黄浦区| 巴彦县| 仲巴县| 长丰县| 左贡县| 和顺县| 阳西县| 嘉义市| 舒兰市| 义马市| 临潭县| 宝坻区| 达拉特旗| 阳江市| 建始县| 巴青县| 南溪县| 兴安县| 常德市| 闽侯县| 常山县| 望江县| 长海县| 冀州市| 广河县| 湘潭县| 涿鹿县| 白水县| 东乌珠穆沁旗| 漠河县| 达拉特旗| 崇阳县| 印江|