其实压力工具是 4 个并发线程,由于每个线程都可以在一秒内完成
4 个事务,所以总的 TPS 是 16。这非常容易理解吧。而在大部分非技术人的脑子里,这样
的场景就是并发数是 4,而不是 16。
那么用户数怎么来定义呢?涉及到用户就会比较麻烦一点。因为用户有了业务含义,所以有
些人认为一个系统如果有 1 万个用户在线,那就应该测试 1 万的并发线程,这种逻辑实在
是不技术。通常,我们会对在线的用户做并发度的分析,在很多业务中,并发度都会低于
5%,甚至低于 1%。
拿 5% 来计算,就是 10000 用户 x5%=500(TPS),注意哦,这里是 TPS,而不是并发线程
数。如果这时响应时间是 100ms,那显然并发线程数是 500TPS/(1000ms/100ms)=50(并
发线程)。
因为:
对一个线程来说,如果响应时间是100ms,那这个线程在一秒内不就是:1000ms/100
ms = 10tps了吗?
如果要达到500TPS,那需要多少线程呢?就是500TPS/10TPS=50线程。