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

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

系統(tǒng) 2455 0

使用python進(jìn)行websocket的客戶(hù)端壓力測(cè)試,這個(gè)代碼是從github上 找到。然后簡(jiǎn)單修改了下。大神運(yùn)用了進(jì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
# 定義線程數(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():
  # 線程池
  pool_list = ThreadPool(thread_num)
  num = list()
  # 設(shè)置開(kāi)啟線程的數(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)論
主站蜘蛛池模板: 延庆县| 板桥市| 延津县| 隆回县| 邻水| 永昌县| 唐海县| 衡阳县| 新乡市| 福州市| 城固县| 康平县| 商河县| 南城县| 万山特区| 中超| 荥阳市| 体育| 宝兴县| 闽清县| 罗定市| 阜宁县| 梅河口市| 武穴市| 晋中市| 嘉黎县| 深水埗区| 泰和县| 福建省| 乌鲁木齐市| 深圳市| 比如县| 鹿邑县| 高碑店市| 文水县| 读书| 广灵县| 明光市| 沙雅县| 丁青县| 托里县|