是这样,最近接一个服务端性能测试,要压一个 SQL 服务器,但是提供的测试环境本身已经不稳定,再加上是虚拟机,内存 CPU 等配置也就大概线上 1/8 的水平左右(这算给面子了)?
但是测试必须进行下去,原定方案就是最大程度模拟线上最大压力场景,何如?想知道大家是如何应对这类问题,提供的环境远不达标但必须有产出。感觉有些像吐槽了
首先环境肯定是不行了,所以利用好现有环境测出理想的 qps,在和线上进行推算
—— 来自 TesterHome 官方 安卓客户端
是啊,只能用现有环境推算。原本是打算用 MySQL 流量回放线上的数据(因为线上的数据库服务器就一台,涉及的业务太多,不目前只能想到引流),这样能勉强模拟真实场景,然后推算。 但是线上库是 SQLserver
这个就是靠经验推算。当然推算是不准的。
网上有淘宝的研究员对全链路压测的演讲,你可以看看。他们的第一个阶段就是推算阶段,遇到和你一样的问题,到第一个阶段最后也没解决这个问题。还设计了推算的算法,也没用,还是算不准。
谢谢,我去研究参考下。
这样测的结果来估算几乎是么有希望的。 另外,DB 的性能测试,也是不应该考虑的测试范围,因为 DB 之所以能作为 DB,是有它的能力的,其测试复杂度非常高。 最需要测试的是自身系统服务接口的性能。
你说的也是,线上数据库的业务复杂度太高,仅仅是环境就难以模仿。但是我要是这么跟领导说可能会翻水水。。。