Locust安装教程与使用
Locust安装教程与使用
官网地址:https://github.com/locustio/locust
如果是python3+以上的环境,需要下载locust项目源码进行安装
因Centos7.2环境已默认安装python2.7版本,所以需要升级python到版本python3
安装python3参考如下:
1)安装python3.6可能使用的依赖
yum -y install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel
2)到python官网找到下载路径, 用wget下载
wget https://www.python.org/ftp/python/3.6.4/Python-3.6.4.tgz
3)解压tgz包
tar -zxvf Python-3.6.4.tgz
4)把python移到/usr/local下面
mv Python-3.6.4 /usr/local/
5)删除旧版本的python依赖
ll /usr/bin | grep python
rm -rf /usr/bin/python
6)进入python目录
cd /usr/local/Python-3.6.4/
7)配置
./configure
8)编译,安装
make && make install
9)删除旧的软链接,创建新的软链接到最新的python
#rm -rf /usr/bin/python
ln -s /usr/local/bin/python3.6 /usr/bin/python
python -V
安装locust参考如下:
#进入安装包存放目录下
cd /usr/local/src
#下载locust
git clone https://github.com/locustio/locust.git
#将locust放到 /usr/local/ 目录下
cp -Rf locust/ /usr/local/
#进入locust目录开始安装
python setup.py install
locust压测步骤说明
1)编写压测脚本,为python脚本文件
2)启动locust服务,并设置启用压测的python脚本文件及hosts信息
3)设置locust访问本地网络及压测参数信息
压测脚本和启动脚本在同一目录
1-压测脚本: locust_test.py
from locust import HttpLocust,TaskSet,task
class UserBehavior(TaskSet):
@task()
def test(self):
self.client.get("/homepage/list_header.html")
class WebUserLocust(HttpLocust):
weight = 1
task_set = UserBehavior
min_wait = 300
max_wait = 700
2-启动脚本: start_locust.py
import os,re,sys,subprocess,webbrowser
def replace_url(url):
dir_path = os.path.dirname(os.path.abspath(__file__))
locust_file_path = os.path.join(dir_path,"locust_test.py")
with open(locust_file_path,"r") as locust_file:
content = locust_file.read()
searchObj = re.search( r'\"(.*)*\"', content, re.M|re.I)
content = content.replace(searchObj.group(),"\""+url+"\"")
open(locust_file_path,"w").write(content)
if __name__ == '__main__':
replace_url(sys.argv[2])
#启动压测时有界面
subprocess.Popen('locust -f .\locust_test.py --host='+sys.argv[1], shell=True)
webbrowser.open("http://localhost:8089/")
#启动压测时无界面
#subprocess.Popen('locust -f .\locust_test.py --host='+sys.argv[1]+' --no-web -c '+sys.argv[3]+' -r '+sys.argv[4]+' -n '+sys.argv[5], shell=True)
3-检测脚本: start.ps1
Write-Host "请输入压测网站host路径(例如:http://api.g.caipiao.163.com):"
$site = Read-Host
Write-Host "请输入压测网站url路径(例如:/homepage/list_header.html):"
$url = Read-Host
Write-Host "请输入模拟访问网站人数(例如:1000):"
$amount = Read-Host
Write-Host "请输入模拟每秒并发访问网站人数(不得小于模拟访问网站人数,例如:100):"
$conc = Read-Host
Write-Host "请输入模拟访问请求总数(例如:100000):"
$reqs = Read-Host
python .\start_locust_implicit.py $site $url $amount $conc $reqs
Read-Host
双击该脚本发起压测: start.ps1
Locust安装教程与使用的更多相关文章
- Linux+apache+mono+asp.net安装教程
Linux+apache+mono+asp.net安装教程(CentOS上测试的) 一.准备工作: 1.安装linux系统(CentOS,这个就不多讲了) 2.下载所需软件 http-2.4.4.ta ...
- Greenplum 源码安装教程 —— 以 CentOS 平台为例
Greenplum 源码安装教程 作者:Arthur_Qin 禾众 Greenplum 主体以及orca ( 新一代优化器 ) 的代码以可以从 Github 上下载.如果不打算查看代码,想下载编译好的 ...
- git 安装教程
昆,简单说下安装教程1,安装Git2,安装TortoiseGit3,打开第一步安装的git工具GIT BASH
- Docker和Docker-compose安装教程以及docker-elk,docker-storm安装教程
此安装教程仅供我自己安装配置时查看,其他的人不可以偷看!!! 安装Docker 1. Update package information, ensure that APT works with th ...
- RHEL 6.3 详细安装教程
以前刚接触linux时,什么都不懂,为了学习,在电脑上安装双系统(原系统为Win7),吃过不少苦头,在网上搜教程,很多都是语焉不详,导致安装过程中战战兢兢.最近朋友面试运维,面试官有考他对linux安 ...
- Android Studio的下载和安装教程(从ADT到AS)
之前一直使用的是Android development tools(简称ADT),后来说是google对ADT不再提供支持,然后一直在考虑是否把自己电脑换成Android Studio(简称AS),从 ...
- mysql快速导出数据库ER图和数据字典(附navicat11安装教程及资源)
♣ mysql使用navicat11快速导出数据库ER图 ♣ mysql使用navicat11快速导出数据库数据字典 ♣ navicat11 for mysql (这里是mysql5.7.12)专业版 ...
- Smokeping安装教程
Smokeping安装教程 #Smokeping2.6.8安装教程 #2016.3.6 改编v1.0 #Linux运维技术交流 347163978 环境 CentOS release 6.4 (F ...
- (二)ADS1.2的安装教程以及使用 调试 (不会 AXD 调试工具)
安装教程: 参考百度 http://jingyan.baidu.com/article/cdddd41c7db85253cb00e1ae.html 具体使用看: 杨铸的那本书(嵌入式底层软件驱动开发) ...
随机推荐
- python3中,pycharm中怎么连接数据库
因为python3现在还不能直接连接数据库,所有如果想连接,就只能通过以下方法: 在APP中的,__init__.py中,添加以下代码就可以: import pymysql pymysql.insta ...
- file -i haha.csv
user@user-desk ~/Downloads/largetrd$ file -i LT_Largetrd.csvLT_Largetrd.csv: text/plain; charset=utf ...
- 利用html5看雪花飘落的效果
html5飘落的雪花堆积动画特效 <!DOCTYPE html> <html> <head> <meta http-equiv="Content-T ...
- 【转载】Eclipse:Android开发中如何查看System.out.println的输出内容
Android开发中在代码中通过System.out.println的输出内容不知道去哪了,在console视图中看不到.而通过Log.i之类的要在Logcat视图中看到,夹杂了太多的其它App及底层 ...
- 天梯赛L2-006. 树的遍历L3-010. 是否完全二叉搜索树
L2-006. 树的遍历 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 给定一棵二叉树的后序遍历和中序遍历,请你输出其层序遍历 ...
- Django 之 requirement.txt 依赖文件生成
通过依赖文件,别人在使用我们的项目时,不需要再一个个去安装所需模块,只需安装依赖文件即可. 1. 导出整个虚拟环境依赖 # 在项目根目录中,打开终端执行以下命令 # 生成 requirements.t ...
- asp.net清空页面上的所有TextBox
Asp.net中一次性清空页面上的所有TextBox中的内容,由于TextBox在客户端以<input type=”text”>形式来呈现的,因此解决方案有客户端和服务器端两种方式,服务器 ...
- 小议Python3的原生协程机制
此文已由作者张耕源授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 在最近发布的 Python 3.5 版本中,官方正式引入了 async/await关键字.在 asyncio ...
- ShellExecute
有三个API函数可以运行可执行文件WinExec.ShellExecute和CreateProcess. 1.CreateProcess因为使用复杂,比较少用. 2.WinExec主要运行EXE文件. ...
- [Xcode 实际操作]六、媒体与动画-(6)使用UIBlurEffect给图片添加模糊效果
目录:[Swift]Xcode实际操作 本文将演示如何给图像添加模糊效果. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] import UIKit class V ...