小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

性能專題:Locust工具實戰(zhàn)之“蝗蟲”降世

 測試開發(fā)技術 2022-06-18 發(fā)布于廣東

第一時間獲取測試技術干貨!


往期性能專題:

性能專題:Locust工具實戰(zhàn)之開篇哲學三問

性能專題:性能測試實施全過程指南

性能專題:一文搞懂性能測試常見指標

性能專題:一文搞懂,性能測試指標評估方法

閱讀全文需5分鐘。

1. 前言

在上一篇文章中,我們已經為大家介紹了什么是Locust,具體可參照:性能專題:Locust工具實戰(zhàn)之開篇哲學三問,簡單來說,Locust 是基于 Python 語言下的一個性能測試庫,如果要想使用它來做性能測試必須要先安裝 Python。

Locust支持的Python版本有2.7, 3.5, 3.6, 3.7, 3.8。

Python安裝較為簡單,此處省略,以Python3.8為例,讀者可自行查閱官網安裝使用介紹。

https://docs./3/using/index.html

2. 為何取名“蝗蟲降世”

本篇在標題上面,賣弄了一下關子,原名應該為: 《性能專題:Locust工具實戰(zhàn)之Locust安裝》,但想想,Locust意為“蝗蟲”,安裝本身的“作用”無非也是讓一個事物,從沒有到有一個過程。一篇文章,優(yōu)質的內容固然重要,但一個具有吸引力、有創(chuàng)意的標題也同等重要,想起今年上映的一部備受好評的電影:《哪吒之魔童降世》,正因為這個名稱,才吸引我去電影院觀看,也算是我為這部電影50億高票房,貢獻了一點綿薄之力,因此本篇文章,改名為“蝗蟲降世”

引用電影宣傳報一張貼圖,封面上的:“打破,一切是否是非定義” 這句話很有深意,可以適用于很多事物思考,思維層面。

3.  Loucst 安裝

Locust安裝過程并不難,常見的有兩種安裝方式。

第一種,直接通過PIP命令形式安裝,

Python 2.7:

$ python -m pip install locustio$ pip install locustio

Python 3:

$ python3 -m pip install locustio$pip3 install locustio

除此之外,還可以根據項目源碼地址指定分支的形式來安裝locust。

Python 3為例,安裝master分支上面的代碼。

$ python3 -m pip install -e git://github.com/locustio/locust.git@master#egg=locustio

方式二,GitHub下載安裝

1、進入到Locust GitHub項目地址:

https://github.com/locustio/locust/

2、將項目克隆下來,通過Python 執(zhí)行 setup.py 文件

...\locust> python setup.py install

安裝成功后可以輸入 `pip show locust` 命令查看是否安裝成功,以及通過 `locust -help` 命令查看幫助信息。

PS:  當前最新Locust版本為0.13.2

注意事項:

  • 運行大規(guī)模測試時,建議在Linux機器上執(zhí)行此操作,因為gevent在Windows下的性能比Linux下面要差很多。

  • 如果打算運行Locust 分布在多個進程/機器,需要安裝pyzmq。

更詳細的安裝介紹可參照官方安裝文檔:

https://docs./en/stable/installation.html#installing-locust-on-macos

?

4. Locust 安裝依賴分析

這里簡單介紹 Locust 都基于了哪些庫。打開 Locust 安裝目錄下的 setup.py 文件。查看安裝要求:

install_requires=[        "gevent>=1.2.2",         "flask>=0.10.1",         "requests>=2.9.1",         "msgpack-python>=0.4.2",         "six>=1.10.0",         "pyzmq>=16.0.2",         "geventhttpclient-wheels==1.3.1.dev2",    ]
  • gevent:在Python中實現(xiàn)協(xié)程的第三方庫(一種網絡庫),協(xié)程又叫微線程Corouine,使用gevent可以獲取極高的并發(fā)能力。

  • flask:Python下的一個Web開發(fā)框架,和Django相當。

  • requests:支持HTTP/HTTPs請求訪問的庫。

  • msgpack-python:一種快速、緊湊的二進制序列化格式,使用類似JSON的數據,主要提供MessagePack數據序列化及反序列化的方法。

  • six:Python 2和Python 3兼容庫,用來封裝處理Python 2和Python 3之間的差異性。

  • pyzmq:主要用來實現(xiàn)Locust的分布式模式運行,安裝這個第三方庫,可以把Locust運行在多個進程或多個機器(分布式)。

當我們在安裝 Locust 時,它會檢測我們當前的 Python 環(huán)境是否已經安裝了這些庫,如果沒有安裝,它會先把這些庫一一裝上。并且對這些庫版本有要求,有些是必須等于某版本,有些是大于某版本。我們也可以事先把這些庫全部按要求裝好,再安裝Locust時就會快上許多。

5. 小結

本文介紹了Locust安裝方法,也是為后續(xù)Locust實戰(zhàn)示例,提前準備好環(huán)境。如果你對Locust性能工具已經提起學習興趣了,請趁早動手起來。

未完待續(xù),下一篇開始實戰(zhàn)~

    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多