测试环境:

测试之前:

开始测试
压力测试情况分两种,一种是有定量需求的,一种是没有定量需求的。定量需求,就是给了你明确的压力测试参数,并且要求服务器的达到相应的指标;另一种就是不给你任何输入,要求你测出一个现有的架构的瓶颈。我们就属于后一种,因为没有明确的指标,我们只能一点点增大压力,看服务器能不能处理得过来 (CPU 怎么样,内存怎么样),以及考虑请求的响应时间 (一般 HTTP 请求的响应时间不要超过 5~10 秒)。

Jmeter 的缺陷
使用 Jmeter 时,发现一个很有意思的现象:我们的应用后台做了单位时间内同一个 IP 注册用户数量的限制,但是,用 Jmeter 压测,始终跑不出来 BUG(认为这个后台功能已经完美实现了),然后我用 Python 的 aiohttp 和 asyncio,写了一段脚本来压测,一下就暴露了问题,每次跑完总会超出这个数量限制 (说明后台功能存在 BUG),脚本源码看这里


↙↙↙阅读原文可查看相关链接,并与作者交流