Locust学习笔记2
一、简介
Locust 是一个易于使用,分布式,用户负载测试工具。它用于负载测试 web 站点(或其他系统),并计算出一个系统可以处理多少并发用户。在测试期间,一大群虚拟用户访问你的网站。每个测试用户的行为由您定义,集群过程由 web UI 实时监控。这将帮助您在让真正的用户进入之前进行测试并识别代码中的瓶颈。
Locust 完全是基于事件的,因此在一台机器上支持数千个并发用户是可能的。与许多其他基于事件的应用程序不同,它不使用回调。相反它通过 gevent 使用轻量级协程。这允许您用 Python 编写非常有表现力的场景,而不用回调使代码复杂化。
二、优点
1)基于python,简单易学
2)开源免费(可以二次开发)
3)分布式执行,配置master和slave,在多台机器上对系统持续发起请求
4)基于事件驱动,与其他的使用进程和线程来模拟用户不同,Locust借助了gevent库对协程(微小的线程)的支持,可以达到更高数量级的并发
5)不支持监控被测机,需要配合其他工具辅助
三、安装
cmd下执行
pip install locust
安装成功
Locust有六个依赖的python模块
1.gevent:在Python中实现协程的第三方库。协程又叫微线程Corouine。使用gevent可以获取极高的并发能力
2.flask:Python的一个web开发框架,和django相当;
3.requests:支持http/https访问的库;
4.msgpack-python:一种快速、紧凑的二进制序列化格式,使用与类似json的数据;
5.six:提供了一些简单的工具封装Python2和Python3 之间的差异;
6.pyzmq:安装这个第三方库,可以把Locust运行在多个进程或多个机器(分布式)
ps:如果出现红色的报错,可能是网络问题,可用latern等梯子下载