对于一个大而全的系统来说,做压测确实是挺难的,不过对于直播这种产品、系统相对独立的服务来说,做压测的可行度和意义较高。
1、目标
在做压测之前,先思考目标:
衡量单机支撑能力,第一反应就是需要多少台服务器,其实对于一个系统来说,除了web服务器,更多的还要考虑资源,比如redis、mysql、流量等等。
如果考虑单机支撑能力,主要看峰值QPS和负载的关系,在可控的负载下,看机器能支持多少QPS,不过如果测试单接口,这个QPS衡量意义就有折扣。
集群的支撑能力,通过压测想预测整个系统的支撑能力,实际上是走错路了,通过正确的压测也许能找出瓶颈点。
压测可以和容量预估同步考虑,根据历史数据找出DAU(日活跃用户数量)、在线用户数、峰值QPS与资源的关系,比如SLB(负载均衡)的峰值流量;峰值接口QPS;MySQL峰值慢查询;redis连接峰值和QPS峰值。
但这个预估很难找出规律,比如一个秒杀活动,一场直播