boomer 里面直接就是协程并发跑函数了。
你可以设置 --max-rps = 2000 ,然后再在 task 函数结尾 time.Sleep 一下。
有,通过 --max-rps 控制
是啊。
其实我最后想表达的意思是,我们不应该只局限于 录制 + 回放
这两个组合,能实现同样测试效果的组合,为什么不能组合使用呢?
比如:
甚至可以两者按需组合。
是的,录制的限制太多了,所以用脚本快速构造流量,只追求 diff 的实现。
截图里面不是很清楚的有get /ping1么,header或者url里面不能直接拿得到吗
diffy 设计里面不以 url 来归纳的,毕竟参数不同,所以是通过人为在回放前,自己在回放流量的 header 里面增加 Canonical-Resource 来实现归纳。
你测试新版版,不是以老版本的response作为对比的基准么,我是说接口入参改了新增了一个入参userId,老版本的response就不可靠了,这种情况不适用
主要是看有哪些 diff,比如这个就是我想要的 diff,我要看的是,除了我预计之外的 diff,有没有什么我没有预计到的 diff,而不是追求没有 diff 。
没懂你想要干嘛?你改了是生效在新版本的,为啥还要让改动在老版本生效?你只能说改完大不了回放在旧版本里面会返回 error ,那也算 diff。
归类是同一个路由的归类,不带任何参数的归类。
简而言之,就是你后端服务的前后迭代,不需要前端去更改业务调度逻辑和更改接口的,都能用。或者,你只要确保同一个请求,传入的参数(比如一些随机生成和查数据库传入的不同的值)在前后版本都有逻辑可以处理,也能用。
本质上是 diff 接口,你接口路由不改,新旧版本都有解析路由参数的逻辑,都能用。要是你接口路由都改了,那就没有可比性了,都不是一个接口了。另外,这个主要是在接口路由不改的情况下,来快速测试一些优化代码版本,或者重构代码版本,或者升级架构如 rpc 版本的快速回归测试。
就是新旧版本的镜像对比,以旧版本镜像为基准,对比新版本镜像 response 的 diff。
可以做成录制抓包,然后自动转成 api 文档
野路子型。。。
是鸭 hhh 太懒了好久没写 gitchat 了
秀儿请坐
赞~
这个是用来写服务器吗,跟 gin echo 有什么区别吗
赞~
并发用户数只是个压力线程,具体 Tps 根据公式来算。
连接数就是系统吞吐量(或者性能?)的一个衡量方式。
具体 pool 和 nonpool grpc 与 http 压测分析在: https://testerhome.com/topics/24967
问下 grpc 加池的意义?我测了一下,不加池原生的 grpc 连接,产生的 tps 会更高,加池限制了池大小,就算调好参数,也没有直接创建新连接来的那么快,因为 pool.put 在持续并发里面有点浪费时间。所以同等数量的压力线程,不加池发出的 tps 远超加池。
---------------- 2020.07.28 更新 ----------------
1.提供 grpc 压测的 docker-compose 部署方案。
2.提供 shaonian/grpc-demo, shaonian/locust-slave-rpc 开源镜像。
locust-slave1:
image: shaonian/locust-slave-rpc:latest
command:
- ./helloworld.pb
- --master-host=locust-master
- --master-port=5557
- --url=grpc-demo:50051
- --data={"name":"world"}
links:
- locust-master
- grpc-demo
3.优化 github README 文案。
优化 slave 镜像,对非任务比重型的压测任务,提供动态指定 targetUrl 的方式,无需频繁构建镜像。
./target --master-host=locust-master --master-port=5557 --url=http://flask-demo:5000
效果如图所示:
Navigated url 不会随着你的点击跳转变化,到了新的页面,手动刷新,才会更新 Navigated url。
赞~
旧版 docker links 用习惯了 hhh 现在新版的主推 network,原因是 links 最终可能会被删除,大体功能上的话差不多,都是用来连接容器通信的,但是有些细节不太一样。不过使用 network 要注意,默认的 default network 不支持容器名或别名访问,只支持 ip 访问,使用容器名访问的需要自己创建特定网络或者用旧版 links ~