如何解释Siege和/或Apache Bench结果

mic*_*129 9 stress-testing apachebench

我们有一个MySQL驱动的网站,有时会在48小时内获得100K用户,所有用户都登录到网站并进行购买.

我们正在尝试使用Apache Bench和Siege等工具来模拟这种负载.

虽然关键指标在我看来是并发用户的数量,而且我们得到了报告结果,但我们仍然觉得我们处于黑暗中.

我想问的是:我们应该测试什么样的东西来预测这种流量?

50个并发用户1000次?500个并发用户10次?

我们正在查看数据库错误,Apache超时和响应时间.我们还应该注意什么?

这是一个模糊的问题,我知道没有"正确"的答案,我们只是在寻找一些关于如何确定我们的基础设施可以切实处理的一般性想法.

提前致谢!

Nat*_*Nat 1

理想情况下,您需要对用户的使用情况进行建模,但为 10 万用户创建模拟并发会话通常并不容易完成。最好的来源是检查最繁忙时间的日志,并尝试找出一种对负载级别进行建模的方法。

数据库通常是基础设施的关键部分,因此我会考虑记录锁定等待的数量和长度以及数据库语句的数量和持续时间。

另一个需要关注的关键项目是磁盘队列长度。

大多数情况下,这个过程是在整个网站或特定页面中寻找缓慢的响应,然后找出原因。

负载测试的最大问题是测试您的网络非常困难,并且如果您(像大多数公共站点一样)通过 ISP 的带宽有限,则可能会产生负载测试中未反映出来的性能问题。