性能測試專題:Locust工具實戰之“蝗蟲”降世


閱讀全文需5分鍾。


1. 前言

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


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


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

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

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

本篇在標題上面,賣弄了一下關子,原名應該為: 《性能專題:Locust工具實戰之Locust安裝》,但想想,Locust意為“蝗蟲”,安裝本身的“作用”無非也是讓一個事物,從沒有到有一個過程。一篇文章,優質的內容固然重要,但一個具有吸引力、有創意的標題也同等重要,想起今年上映的一部備受好評的電影:《哪吒之魔童降世》,正因為這個名稱,才吸引我去電影院觀看,也算是我為這部電影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 執行 setup.py 文件

...\locust> python setup.py install


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


PS:  當前最新Locust版本為0.13.2


注意事項:

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

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


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

https://docs.locust.io/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中實現協程的第三方庫(一種網絡庫),協程又叫微線程Corouine,使用gevent可以獲取極高的並發能力。

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

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

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

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

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


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


5. 小結

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


未完待續,下一篇開始實戰~


希望這篇文章能幫到你!更多干貨文章請關注我們。



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM