我应该加载测试托管的网站吗?怎么样?

时间:2010-12-12 16:17:31

标签: performance hosting load-testing stress-testing

在构建网站或应用程序时,最好对其进行加载测试,以确保它能够处理生产负载(使用HP LoadRunner,RadView的WebLOAD等工具)。

如果应用程序是在外部托管,我该怎么办?我可以加载测试吗?我是不是该?怎么样?

3 个答案:

答案 0 :(得分:1)

简短的回答:是的,你应该加载测试。

答案越长:您应该尝试在测试中复制生产环境。它不需要完全相同,但您应该尽可能地接近,特别是在软件环境和物理内存方面。复制时CPU速度不太重要(只要它相当类似),但您可能希望保持CPU的数量正确。尽量保持磁盘速度尽可能接近生产环境,因为这可能是一个重要的瓶颈。除非您正在进行大量写入(临时或永久性),否则磁盘空间并不重要。

然后,您可以在将测试环境投入生产之前对其进行负载测试。这将让您了解应用程序将处理多少负载。您的测试环境与生产环境越相似,您的结果就越有意义。

答案 1 :(得分:0)

您是否在共享主机帐户?然后,您需要首先联系您的托管公司,因为您可能会关闭其他网站(拒绝服务攻击...)

答案 2 :(得分:0)

这是最佳做法吗?是的,绝对。

  

如果应用程序是在外部托管,我该怎么办?我可以加载测试吗?我应该吗?

是的,你可以,是的,你应该。

  

如何?

在过去几年中,随着便宜的每小时计算机租赁(即EC2等云供应商)的出现,这变得更加容易。寻找支持从云生成负载的工具。如果你有一个要测试的内部系统,你应该从那里开始 - 在这种情况下你需要选择一个允许内部和外部测试的测试工具(通常不支持云负载测试服务)。

我会反对其中一个答案,以及传统的答案,说你绝对应该尽可能地测试你的生产系统。在理想的世界中,您将拥有一个完全相同的测试系统,因此只有在测试系统完全满足性能要求之后才能进行生产测试 - 此时它主要是一种形式 - 以确保生产环境中的所有内容都是正确配置(你会惊讶于“相同”的测试/生产系统经常不相同!)。但在现实世界中,完全重复的测试系统并不总是可行或实用的。我们定期测试客户的生产基地 - 实际上,除了开发和功能测试期间使用的单一服务器系统外,我们的客户很少有测试系统。它并不理想,但非常可行。

至于一般程序 - 从几个最关键的用户场景(测试用例)开始,然后:

  1. 构建并验证测试用例
  2. 运行测试并分析结果
  3. 优化/调整系统直至达到性能目标
  4. 扩展范围并重复1-3,因为您的日程/预算允许。
  5. 尽量不要陷入模拟测试用例“完全正确”的细节 - 特别是在早期。任何负载测试仅仅是现实世界使用的近似值 - 实际使用的每一天(或每小时)都是独一无二的。将一个测试用例“恰到好处”花费的时间不是用于测试应该测试的其他15个测试用例的时间。我们在our blog上有一些其他文章可以帮助您入门。

    祝你好运!

相关问题