QPS,PV,UV,RT之间的关系
QPS: 每秒查询率(Query Per Second),每秒的响应请求数,也即是最大吞吐能力。 QPS = rep/sec = 请求数/秒 QPS 统计方式【一般使用http_load进行统计 QPS = 总请求数 / (进程总数 *请求时间) QPS: 单个进程每秒请求服务器的成功次数 峰值 QPS: 每天 80% 的访问集中在 20% 的时间里,这 20% 的时间叫做峰值时间 公式: (总 pv 数 * 80%)/ (每天秒数 * 20%) = 峰值时间每秒请求数据(QPS) PV: 访问量即 Page View,即页面浏览量或点击量,用户每次刷新即被计算一次单台服务器每天 PV 计算 公式1(峰值): 每天总 PV = QPS * 3600 * 6 公式2(normal): 每天总 PV = QPS * 3600 * 8 UV: 独立访客即 Unique Visitor,访问您网站的电脑哭护短为一个访客,00:00-24:00 内相同的客户端只被计...
jmeter模拟浏览器行为发送请求(web页面端压力测试)
背景 在做性能测试的时候,有时候我们希望测试用户访问一个web页面的加载时间,使用 jmeter 压测的话,需模拟浏览器的行为,加载整个页面的内容。包含一些js,css,png图片资源等文件的加载。 参考: https://blog.csdn.net/meitingbee/article/details/53924469 https://blog.csdn.net/qq_27371025/article/details/117945423 https://www.jianshu.com/p/c5370860b142
jmeter线程组执行顺序设置
背景 当前请求需要上一个请求响应的数据做参数的值传入到当前请求里,这种情况必须保证上一个请求先执行,才能保证当前请求可以得到参数的值 操作 此示例为将登陆之后获取的cookie放置到全局变量中, 供后续线程组使用 按此配置后, 执行顺序会从上到下依次执行 注: 如果使用了不同的线程组可能会遇到非预期执行顺序的现象 除了主线程组,还有两种特殊的线程组:setUp线程组和tearDown线程组. 它们与主线程组区别在于,setUp线程在主线程执行前自动触发执行;而tearDown线程组在主线程结束后执行。 setUp线程组可以用于测试准备,比如用它来创建测试用户等。 Teardown线程组可以用于测试清理工作,比如删除测试用户等。
json提取器使用方法
一、 json path 语法 在线网站地址:链接 摘自https://blog.csdn.net/qq_45664055/article/details/121523930 1、提取lastName的值可以写$.lastName $: 代表整个json,根节点 . : 点代表下个节点 $.lastName 意思就是,找到根节点下的lastName的值 2、提取根节点下的 address,下的streetAddress 根节点下的 address是一个对象,在json中以{}括起来的叫对象,city是address对象的子节点,所以表达式写为:$.address.streetAddress 3、提取列表中的值 phoneNumbers的值是一个列表,列表使用[] 括起来,列表中可以存放多个对象。 提取phoneNumbers列表中的第一个对象的type的值,语法:$.phoneNumbers[0].type 取列表里面的值,要在后面加上[],里面填写索引值,第一个对象 对应索引0, 第二个对应索引1,以此类推。 二、JMeter中使用JSON 注:以下演示接口是自己写的,...
软链接和硬链接的用法
查看软/硬连接123456789101112[root@k3s-node4 bin]# ls -ltotal 25844-rwxr-xr-x 1 root root 26451968 Mar 29 02:23 docker-composelrwxrwxrwx 1 root root 26 Apr 6 02:16 node -> /usr/local/nodejs/bin/node-rwxr-xr-x 1 root root 3506 Apr 14 09:27 node-gyplrwxrwxrwx 1 root root 25 Apr 6 02:16 npm -> /usr/local/nodejs/bin/npm-rwxr-xr-x 1 root root 177 Apr 14 09:27 npx-rw-r--r-- 1 root root 27 Apr 14 09:28 package-lock.jsonlrwxrwxrwx 1 root root 25 Apr 14 09:37 pm2...
Liquibase的使用
liquibase- 引自官网 LiquiBase是一个用于数据库重构和迁移的开源工具,通过日志文件的形式记录数据库的变更,然后执行日志文件中的修改,将数据库更新或回滚到一致的状态。 它的目标是提供一种数据库类型无关的解决方案,通过执行schema类型的文件来达到迁移。其有点主要有以下: 支持几乎所有主流的数据库,如MySQL, PostgreSQL, Oracle, Sql Server, DB2等; 支持多开发者的协作维护; 日志文件支持多种格式,如XML, YAML, JSON, SQL等; 支持多种运行方式,如命令行、Spring集成、Maven插件、Gradle插件等。 在多数据源项目中,sql显然不如yml.xml等自如 版本号由开发人员来维护,使用 author + id 12345678910111213141516171819202122232425262728293031<dependencies> <dependency> <groupId>org.liquibase</groupId>...
lua语法入门
Lua语法入门Nginx编程需要用到Lua语言,因此我们必须先入门Lua的基本语法。 初识LuaLua 是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放, 其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。官网:https://www.lua.org/ Lua经常嵌入到C语言开发的程序中,例如游戏开发、游戏插件等。 Nginx本身也是C语言开发,因此也允许基于Lua做拓展。 HelloWorldCentOS7默认已经安装了Lua语言环境,所以可以直接运行Lua代码。 1)在Linux虚拟机的任意目录下,新建一个hello.lua文件 2)添加下面的内容 1print("Hello World!") 3)运行 变量和循环学习任何语言必然离不开变量,而变量的声明必须先知道数据的类型。 Lua的数据类型Lua中支持的常见数据类型包括: 另外,Lua提供了type()函数来判断一个变量的数据类型: 声明变量Lua声明变量的时候无需指定数据类型,而是用local来声明变量为局部变量: 1234567...
将maven包发布到Maven中央仓库
注意点1: 测试gpg和javadoc插件不适用于jdk11,jdk8测试没问题 注意点2: 同一个版本号不可以重复发布 注意点3: 无法删除已发布的包 注册Sonatype的账户地址 点击界面上方 Create 按钮即可创建Issue。 12345678Project: Community Support - Open Source Project Repository Hosting (OSSRH)Issue TypeRequired: New ProjectSummary: Jar包的名称# 注意这里,group id需要证实当前域是你本人所有的,我就在这里配错了,找了好半天,详细的过程可以看这里https://issues.sonatype.org/browse/OSSRH-79407Group Id:io.github.wang-xiaowu Project URL:项目站点,如:https://gitee.com/snowheart/dingtalk-robotSCM url:项目源码仓库,如:https://gitee.com/snowheart/dingta...
配置maven第三方仓库地址的两种方式
Mirror mirror相当于一个拦截器,它会拦截maven对remote repository的相关请求,把请求里的remote repository地址,重定向到mirror里配置的地址。 repositories 步骤一:优先查询本地仓库地址是否存在,不存在,继续; 步骤二:从配置的center repository 下载,没找到,继续; 步骤三,依次从配置的下配置的一个或者多个远程仓库下载,如果均请求不到,就会报错了; 所以maven最佳配置: 配置mirror, 避免中央镜像墙内网络问题 配置远程仓库地址, 避免有些资源从单一仓库无法下载下来 方式一:全局配置可以添加阿里云的镜像到maven的setting.xml配置中,这样就不需要每次在pom中,添加镜像仓库的配置,在mirrors节点下面添加子节点: 配置镜像注:Maven默认中央仓库的id 为 central。id是唯一的。因此可以使用< id>central< /id>覆盖默认的中央仓库。 默认情况下配置多个mirror, 只有第一个生效 那么假如在公司使用内网, ...
Mongo知识小结
文档型存储的中间件 使用B+树来索引,存储BSON数据(二进制格式的JSON) 支持对文档数据的增删改查,即CRUD操作。 使用了分片和复制技术,支持处理超大规模数据。 基于C++编写 分片模式除了Hash模式,还有Range模式。 集群的配置方式需要手工配置。 全文检索: MongoDB仅支持有限的字段检索,且需人工索引。 MongoDB适用于数据大批量存储, 以及需要被约束的主营业务数据
