性能测试工具 商品秒杀如何做压测

名字是个称呼 · 2023年04月17日 · 最后由 名字是个称呼 回复于 2023年04月20日 · 15982 次阅读

有个性能压测需求,商品秒杀的要做下单接口的压测,不用加入购物车的接口,直接通过下单接口压测,每个用户只能限购一件,请问这种怎么做吖?

最佳回复

我的做法是自动注册账号并登录,然后下单购买,不同用户生成唯一账号是靠框架支持,如果注册登录接口的性能非常差,可以做类似集合点的东西,我用的框架没有这类设计,但是可以做到。如果真的不想调用注册登录接口,那就只能先准备足够多的账号并登录,记录下该账号登录后的 cookie,下单接口携带 cookie 即可

共收到 9 条回复 时间 点赞

提前准备好足够多的账号,然后用集合点让所有线程同时发压。

我的做法是自动注册账号并登录,然后下单购买,不同用户生成唯一账号是靠框架支持,如果注册登录接口的性能非常差,可以做类似集合点的东西,我用的框架没有这类设计,但是可以做到。如果真的不想调用注册登录接口,那就只能先准备足够多的账号并登录,记录下该账号登录后的 cookie,下单接口携带 cookie 即可

对 涤 回复

我的好像用的是 token,那我假如要 50 个并发,是要准备 50 个账号登录后获取到的 token 吗?然后 50 个线程去通知执行下单接口?

对 陈恒捷 回复

是的,这个集合点要准备的,主要是前期准备工作不太懂

你说的 token 应该也是附在 cookie 里面的,或者是一块 http 头信息,也有可能是 http 正文中携带,主要看你们的系统怎么设计的,这个可以问开发。如果你生成了 50 个账号的 token,那你发送 50 个下单接口请求,每个请求都要带上账号 token。你的程序框架可能是用一个线程模拟一个用户,那就是启动 50 个线程。

这应该是最简单的压测场景了吧 建立足够多的账号,使用集合点释压, 针对一个用户只能买一个的场景可以设置一下不同数量的参数

用户登录认证这些能 mock 就 mock 掉,关注点还是秒杀场景,线程数/并发数要一次性足够大

50 个线程,使用集合点,每个线程使用不同的登录

对 涤 回复

是的,是在请求头存放的 token,已解决了

10楼 已删除
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册。