网站可扩展性的性能测试和压力测试
我们平日会用一个问句,即这个流程与可扩大性有关吗?这一次,愿望你已经可以列出机能测试和压力测试在影响可扩大性的多种身分中占领一席之地的原因了。在商量它们之间的关系时,我们预备把重点放在三个方面,即余量、变革掌握和风险治理。
你懂得本身体系中某个特定办事应用的产能是若干,对于可扩大性来说,至关主要。知道这一点,就可以盘算距离扩大,你还有若干时光和成长空间。它是计划余量和基本举措措施项目、拆分数据库/运用以及制订预算的基本。而确保你盘算精确的办法是对所有宣布的版本都进行机能测试,如许可以包管你没有惹人意想不到的负载增长。一个组织在一次宣布中到达了所许可的最年夜负载增量是很常见的。当你在产能计划方面变得日益成熟时,你就会把新功效带来的负载看作一种成本,要把它计入成本收益剖析。此外,为了确保估计的断点和机能降低曲线仍然与以前辨认的一样,压力测试也是必须的。有可能惯例的应用负载没有变更,但新的代码路径或逻辑转变却会造成整体负载才能的降低。例如,假如一个数据成果的查询增长了90毫秒,那么在用户要求的整体响应时光中,它可能不会引起留意,但假如这个办事是和其他办事同步绑定在一路的,如负载构建办事,那么成百上千个90毫秒的延迟累加起来,就会下降该办事的最年夜产能。
当我们评论辩论变革治理时,我们不只评论辩论了实用于创业公司的轻量级变革辨认流程,还评论辩论了积极治理临盆情况中的变革的公司可以采取的完全变革治理流程。我们把变革治理界说为由下列组件组成,即变革建议、变革同意、变革日程支配、变革实行和记载、变革验证以及变革审查。机能测试和压力测试强化了变革治理流程,它们供给了实践性的实现,而且异常主要的是,验证了变革。假如你没有证实一个变革会真的依照你预想的那样影响体系,例如修复了一个bug或者供给了一个新功效,那么你必定不想实行这个变革。作为机能测试和压力测试的一部门,我们可以在一个可控的情况中验证估计的变革成果。这个额外的步调,可以确保变革在临盆情况中实行后,它可以或许在各类负载下,像它在测试时表示的那样运行。
在把机能测试和压力测试联系关系到可扩大性时,我们应当斟酌的最主要的身分是风险治理。要确保你的体系可以或许扩大,风险治理是最主要的流程之一。在风险治理之前要进行风险剖析,即测验考试盘算各类行为或组件中的风险年夜小。机能测试和压力测试是两种可以或许年夜年夜下降某次办事变革带来的风险的办法。例如,假如我们应用的是故障模式和效果剖析法,辨认出某个功效的故障模式是会增长查询时光,而建议的解救办法是在真实的负载前提下测试这个功效,就像机能测试一样,以肯定该功效的真正反响。还可以像压力测试那样,用极限负载来进行测试,以不雅察该功效在超惯例前提下的反响。这两种测试都能供给更多关于该功效的真实机能都是强有力的对象。的信息,从而下降了风险。对于下降或治理每次宣布的风险或体系整体的风险来说,这两种测试有着内涵的接洽。
不外,正如我们在评论辩论网站扶植压力测试时所警告的,制作测试负载并不轻易,如从余量、变革掌握和风险治理这三个方面,我们可以发明体系的可扩大性与采取机能和压力流程。假如做得欠好,会生成毛病的数据。但这并不料味着就不值得去懂得、实行以及(最终)控制这些测试。