日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

python性能測試工具locust的使用

瀏覽:136日期:2022-07-01 08:58:21
一、簡介

Locust 是一個易于使用,分布式,用戶負載測試工具。它用于負載測試 web 站點(或其他系統),并計算出一個系統可以處理多少并發用戶。在測試期間,一大群虛擬用戶訪問你的網站。每個測試用戶的行為由您定義,集群過程由 web UI 實時監控。這將幫助您在讓真正的用戶進入之前進行測試并識別代碼中的瓶頸。

Locust 完全是基于事件的,因此在一臺機器上支持數千個并發用戶是可能的。與許多其他基于事件的應用程序不同,它不使用回調。相反它通過 gevent 使用輕量級協程。這允許您用 Python 編寫非常有表現力的場景,而不用回調使代碼復雜化。

二、安裝

用 pip 管理工具安裝:

pip3 install locust

檢查是否安裝成功,執行命令:locust --v

python性能測試工具locust的使用

三、壓測過程1.編寫腳本

Locust 不同于 jmeter 可以用 GUI 來創建壓測腳本。Locust 需要自己編寫 python 腳本,壓測負載腳本主要包含兩個子類UserTask和WebsiteUser,分別繼承TaskSet和Httplocust類,擁有這兩個父類的公共屬性和方法。

from locust import HttpLocust, TaskSet, task, betweenimport os,json# 定義用戶行為class UserTask(TaskSet): def on_start(self): ’’’初始化數據,每個虛擬用戶只執行一次’’’ self.client.post('/login',{'username':'test','password':'123456'}) @task(2) def home_index(self): r = self.client.get('/sz/Home/DefaultHomeV2Request') assert json.loads(r.text)[’Error’] == 0 @task(1) def sale(self): self.client.get('/sz/Home/FlashSaleRequest') assert json.loads(r.text)[’Error’] == 0 def on_stop(self): ’’’銷毀數據,每個虛擬用戶只執行一次’’’ self.client.post('/SignOut',{'CustomerGuid':'c7d7e646-9ce2-499b-a22e-a3c98d4545fe'})class WebsiteUser(HttpLocust): host = ’http://10.1.62.126’ task_set = UserTask wait_time = between(3, 5)if __name__ == '__main__': os.system(’locust -f stress_test.py ’)

locust 運行時:

on_start() :每個并發用戶在開始前各執行一次 on_stop():每個并發用戶在結束后各執行一次 @task: 通過裝飾器設置運行權重,比如上面代碼中 執行任務 home_index 和 sale 的總請求為 2:1 assert:斷言設置 wait_time :每個任務之間設置間隔時間,隨機從3~5區間內取,單位是 s locust -f:指定 .py 壓測腳本路徑 2. Locust 監控

順帶提一下 locust web UI監控是基于 flask 框架,不指定 port 的話,默認地址:http://localhost:8089

python性能測試工具locust的使用

開始測試,Locust 提供一個簡易的監控界面,可以看到 RPS、響應時間 和 部分曲線圖

python性能測試工具locust的使用

python性能測試工具locust的使用

python性能測試工具locust的使用

python性能測試工具locust的使用

3.運行模式 1.web UI 模式

locust -f stress_test.py --web-host 10.1.44.31 --web-port 8090

--web-host:指定 web UI IP,默認 localhost

--web-port:指定 web UI 端口,默認 8089

2. no web 模式

locust -f stress_test.py --no-web -c 100 -r 20 -t 120

--no-web:指定無 web UI模式

-c:起多少 locust 用戶(等同于起多少 tcp 連接)

-r:多少時間內,把上述 -c 設置的虛擬用戶全部啟動

-t:腳本運行多少時間,單位s

在 --no-web 模式下的報告如下:

python性能測試工具locust的使用

4.分布式進程

Locust 是由 python 編寫的,由于GIL的限制,單進程不能利用CPU多核的優勢(實際測試結果也是一樣,8核心的虛擬機,只有一核達到了95%以上的使用率,其余7核只圍觀,不出力)。所以單臺機器上想要盡可能的壓榨 CPU,只能開啟多進程,一般有多少個核心啟多少進程。

單臺多進程:

先啟一個 master

locust -f /home/script/stress_test.py --web-host 10.1.62.223 --master

再啟 8 個 slave

locust -f /home/script/stress_test.py --slave

slave 節點啟動后,在 locust 監控中能看到

python性能測試工具locust的使用

多臺多進程:

多臺機器搭建 Locust 分布式 和 單臺搭建多進程差不多。只有一個區別,如果 slave 和 master 不在一臺機器上, slave 需要指定 --master-host 參數:

python性能測試工具locust的使用

更多功能使用請查看Locust官方文檔,形成良好的習慣 :官方文檔

四、總結

Locust 基于 python 腳本定制化壓測,使用 python 語言來實現 參數化、關聯參數、斷言和一些復雜的壓測場景非常方便。Locust 使用協程來構建tcp連接,本身單機并發能力強,但內部是由requests庫的httpclient 發起網絡請求,requests庫功能挺全面,性能卻很一般,好在 Locust 支持分布式,彌補了一定的性能缺陷。根據自己做的測試,同樣幾臺客戶機,jmeter搭建分布式測出的 qps 比 Locust分布式 高1/3。如果要提升 locust 單進程性能,可以將 httpclient 的實現方式從 requests 換成 geventhttpclient ,這個下一篇再講述。

以上就是python性能測試工具locust的使用的詳細內容,更多關于python性能測試工具locust的資料請關注好吧啦網其它相關文章!

標簽: Python 編程
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
久久久久.com| 婷婷成人基地| 女人天堂亚洲aⅴ在线观看| 国产不卡人人| 韩国久久久久久| 国产精品一线| 国产色99精品9i| 久久国内精品自在自线400部| 蜜桃传媒麻豆第一区在线观看| 视频在线不卡免费观看| 亚洲欧洲高清| 亚洲午夜久久久久久尤物| 久久网站免费观看| 欧美专区在线| 日韩国产在线观看一区| 国产精品一区二区三区美女| 久久中文字幕导航| 日韩电影在线视频| 午夜久久影院| 欧美综合社区国产| 日本综合精品一区| 欧美肉体xxxx裸体137大胆| 国产精品尤物| 综合一区av| 免费国产自久久久久三四区久久| 97久久超碰| 天堂成人国产精品一区| yellow在线观看网址| 国产色99精品9i| 欧美日韩精品免费观看视完整| 国产一区久久| 日韩精品第一| 蜜桃av在线播放| 亚洲深夜福利在线观看| 精品日韩在线| 亚久久调教视频| 日韩欧美中文字幕电影| 91亚洲一区| 亚洲精品一区二区在线播放∴| 精品九九久久| 日韩 欧美一区二区三区| 久久久国产精品一区二区中文| 日韩精品免费视频一区二区三区| 老司机免费视频一区二区| 美女精品网站| 99久久婷婷这里只有精品| 欧美激情福利| 亚洲资源网站| 日韩免费看片| 久久精品国产68国产精品亚洲| 久久亚洲成人| 黄色av日韩| 亚洲精品一二三**| 欧美天堂在线| 捆绑调教美女网站视频一区 | 国产欧美综合一区二区三区| 91久久亚洲| 好看不卡的中文字幕| 电影亚洲精品噜噜在线观看| 另类欧美日韩国产在线| 欧美在线91| 欧美一级二级视频| 亚洲不卡视频| 日韩中文字幕| 国产精品美女久久久浪潮软件| 国产中文一区| 米奇777超碰欧美日韩亚洲| 日韩在线免费| 日韩国产激情| 欧美69视频| 国产高清一区二区| 99pao成人国产永久免费视频| 激情欧美日韩一区| 日产精品一区二区| 亚洲网站视频| 蜜臀91精品一区二区三区| 日韩中文字幕| 久久av日韩| 亚洲激情社区| 亚洲天堂免费| www.九色在线| 91亚洲精品视频在线观看| 亚洲综合在线电影| 欧美一区在线观看视频| 欧美理论视频| 国产成年精品| 欧美私人啪啪vps| 免费日韩av| 久久一区二区三区电影| 欧美国产专区| 日本视频一区二区| 国产精品视区| 美女少妇全过程你懂的久久| 精品精品99| 蜜桃视频在线观看一区二区| 91精品xxx在线观看| 美女免费视频一区| 日本精品久久| 免费国产亚洲视频| 欧美日韩三区| 99视频精品全部免费在线视频| 国产精品久久国产愉拍| 日韩和欧美一区二区三区| 丝袜美腿一区二区三区| 欧美精品九九| 亚洲一区免费| 综合色就爱涩涩涩综合婷婷| 老牛影视一区二区三区| 蜜桃久久久久久| 合欧美一区二区三区| 蜜芽一区二区三区| 青草久久视频| 久久精品日韩欧美| 亚洲一级少妇| 亚洲欧美日韩国产一区| 亚洲人成网77777色在线播放| 视频一区日韩| 久久精品72免费观看| 国产精品白浆| 日韩综合在线| 亚洲国产专区校园欧美| 欧美日韩国产在线一区| 日本大胆欧美人术艺术动态| 亚洲欧美不卡| 亚洲精品大全| 日韩欧美精品一区二区综合视频| 国产日本久久| 老牛国内精品亚洲成av人片 | 亚洲人成高清| 婷婷综合电影| 国产精品毛片视频| 久久不见久久见中文字幕免费| 欧美欧美黄在线二区| 国产精品成人自拍| 久久精品欧洲| 模特精品在线| 奇米777国产一区国产二区| 日本激情一区| 福利在线免费视频| 三上悠亚国产精品一区二区三区 | 日韩精品久久久久久久软件91| 国产成人77亚洲精品www| 久久精品播放| 天堂久久一区| 97精品国产一区二区三区| 亚洲国产欧美日本视频| 日韩精品一级中文字幕精品视频免费观看 | 天堂成人国产精品一区| 免费日韩精品中文字幕视频在线| 久久av日韩| 蜜臀久久99精品久久一区二区| 视频一区视频二区中文| 国产九九精品| 91久久中文| 日韩大片在线观看| 日韩三级精品| 韩国三级一区| 欧美日韩视频免费看| 亚洲人成网77777色在线播放| 亚洲精品成人图区| 日韩极品在线观看| 另类欧美日韩国产在线| 欧美午夜不卡| 国产亚洲在线| 久久中文字幕av一区二区不卡| 日韩精品欧美成人高清一区二区| 日本久久黄色| 91麻豆精品激情在线观看最新 | 国产精品久一| 免费久久99精品国产自在现线| 手机在线电影一区| 日韩高清一区| 亚洲女同中文字幕| 婷婷综合五月| 国产精品视频一区视频二区| 午夜欧美理论片| 欧美日韩视频免费观看| 国产精品一二| 久久精品人人| 久久国产尿小便嘘嘘| 男人天堂欧美日韩| 在线一区视频观看| 美女久久99| аⅴ资源天堂资源库在线| 国产精品视频3p| 久久精品超碰| 国产日韩一区二区三区在线播放| 91欧美精品| 国产探花在线精品一区二区| 亚洲综合图色| 亚洲开心激情| 欧美a级一区二区| 国产高清日韩| 国产午夜精品一区在线观看| 亚洲三级毛片| 视频一区国产视频| 国产精品黄色片| 精品伊人久久| 欧美天堂视频| 特黄特色欧美大片|