在构建网站或应用程序时,最好对其进行加载测试,以确保它能够处理生产负载(使用HP LoadRunner,RadView的WebLOAD等工具)。
如果应用程序是在外部托管,我该怎么办?我可以加载测试吗?我是不是该?怎么样?
答案 0 :(得分:1)
简短的回答:是的,你应该加载测试。
答案越长:您应该尝试在测试中复制生产环境。它不需要完全相同,但您应该尽可能地接近,特别是在软件环境和物理内存方面。复制时CPU速度不太重要(只要它相当类似),但您可能希望保持CPU的数量正确。尽量保持磁盘速度尽可能接近生产环境,因为这可能是一个重要的瓶颈。除非您正在进行大量写入(临时或永久性),否则磁盘空间并不重要。
然后,您可以在将测试环境投入生产之前对其进行负载测试。这将让您了解应用程序将处理多少负载。您的测试环境与生产环境越相似,您的结果就越有意义。
答案 1 :(得分:0)
您是否在共享主机帐户?然后,您需要首先联系您的托管公司,因为您可能会关闭其他网站(拒绝服务攻击...)
答案 2 :(得分:0)
这是最佳做法吗?是的,绝对。
如果应用程序是在外部托管,我该怎么办?我可以加载测试吗?我应该吗?
是的,你可以,是的,你应该。
如何?
在过去几年中,随着便宜的每小时计算机租赁(即EC2等云供应商)的出现,这变得更加容易。寻找支持从云生成负载的工具。如果你有一个要测试的内部系统,你应该从那里开始 - 在这种情况下你需要选择一个允许内部和外部测试的测试工具(通常不支持云负载测试服务)。
我会反对其中一个答案,以及传统的答案,说你绝对应该尽可能地测试你的生产系统。在理想的世界中,您将拥有一个完全相同的测试系统,因此只有在测试系统完全满足性能要求之后才能进行生产测试 - 此时它主要是一种形式 - 以确保生产环境中的所有内容都是正确配置(你会惊讶于“相同”的测试/生产系统经常不相同!)。但在现实世界中,完全重复的测试系统并不总是可行或实用的。我们定期测试客户的生产基地 - 实际上,除了开发和功能测试期间使用的单一服务器系统外,我们的客户很少有测试系统。它并不理想,但非常可行。
至于一般程序 - 从几个最关键的用户场景(测试用例)开始,然后:
尽量不要陷入模拟测试用例“完全正确”的细节 - 特别是在早期。任何负载测试仅仅是现实世界使用的近似值 - 实际使用的每一天(或每小时)都是独一无二的。将一个测试用例“恰到好处”花费的时间不是用于测试应该测试的其他15个测试用例的时间。我们在our blog上有一些其他文章可以帮助您入门。
祝你好运!