阅读全文需 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 性能工具已经提起学习兴趣了,请趁早动手起来。
未完待续,下一篇开始实战~
希望这篇文章能帮到你!更多干货文章请关注我们。