2

我将使用 Apache JMeter 在网页上执行负载和压力测试,但我不太确定适当的网络设置。通过本地网络或互联网连接两台机器,服务器与网页和运行 JMeter 的客户端是否更好。使用互联网会更接近真实场景,但使用本地网络,连接会更加稳定,并且您有更多带宽同时处理更多请求。我非常感谢意见!

4

2 回答 2

2

这实际上是负载测试的两种风格或方法,两者都是有效的。

第一个你可以称之为实验室测试。您将可能影响吞吐量/响应的因素的数量降至最低。次并真正将测试重点放在系统本身上。

第二个是更现实的场景,您试图通过在系统上线时通过尽可能多的实际网络层路由请求来获得尽可能多的覆盖范围。

方法 1 的好处是您简化了测试,这使得理解和发现任何问题变得更加容易。问题是您缺乏完整的覆盖范围。

方法 2 的好处是它不仅更现实,而且还提供了更高的置信度——尤其是。通过更高容量的测试,您可能会发现交换机或防火墙存在问题,并且只有通过此类测试才能识别此类问题。问题是它会使发现任何问题变得更加困难。

所以,简而言之,你真的想做这两种类型。您可能会发现从外到内从完整的端到端测试开始会更容易,然后只有在发现需要隔离/调查问题时才进行更集中的测试。这样,您就有机会减少设置工作量,同时仍能从测试中获得最大收益。

注意:外在意味着,您的测试台应该位于 LAN 之外(假设这是实时流量的流动方式)。如今,使用基于云的硬件很容易设置。

另请注意:如果您运行测试的机器在这两种情况下都是相同的,那么通过互联网路由流量(从您的 LAN 中然后再次返回)可能不会告诉您任何有用的信息,并且实际上可能导致您的结果中有误报(更不用说您公司的网络问题了!)

于 2012-06-05T17:08:52.077 回答
1

恕我直言,您应该使用您的局域网。

几乎每个用户的 dl/ul 速度都会略有不同,所以我建议你先用你的 LAN 做一个正常的性能测试,当你完成后,你可以从外面做一些运行,只是为了看看差异。

请记住,您主要是在应用程序所在的硬件上测试应用程序的效率。(您未来用户的)网络速度是您无法以任何方式影响的因素。

于 2012-06-05T07:36:30.870 回答