【问题标题】:load testing through wifi/lan + vpn通过 wifi/lan + vpn 进行负载测试
【发布时间】:2021-04-03 12:34:53
【问题描述】:

我真的没有在网上找到我的问题的答案。我目前正在为 Web 服务进行负载测试,例如:服务将如何在 1 秒内处理 15 个线程,为此我使用 Jmeter。对于 15 个线程,我总是得到不同的平均响应时间。当我在公司的内部网络中时,我得到了很好的结果,但是当我在家时,使用 lan/wifi + vpn 访问该网络服务时,我得到了可怕的结果。当我通过vpn测试时,web服务无法在1秒内处理30个线程,平均响应时间为13秒,否则来自公司网络,平均响应时间为4-5秒。此外,该 Web 服务也可以从使用 vpn 的系统中调用。 我的问题是,什么是正确的结果和正确的测试方法。通过公司网络或通过 vpn 进行测试?

【问题讨论】:

    标签: testing jmeter load-testing stress-testing web-api-testing


    【解决方案1】:

    可以说,测试它的正确方法应该是您的用户访问您的网络服务的方式。

    如果大多数用户是通过 VPN 从外部访问它,那么就以这种方式进行测试;如果是相反的方法,请从公司的网络进行测试。
    在混合访问的情况下,您可能希望同时测试两者。

    【讨论】:

    • 应用程序将通过 vpn 使用该服务来访问
    • 实际使用中的每个用户可能都有自己的 VPN 链接,但在负载测试时,所有模拟用户将使用相同的 VPN 链接,这样的测试不会模拟现实。如果每个模拟用户都可以使用不同的 VPN 链接,那么测试可能是有效的。
    【解决方案2】:

    响应时间由以下指标组成:

    1. Connect time
    2. Latency(也称为Time To First Byte
    3. Time to last byte

    所以我的期望是这不是高响应时间,更多的是关于你的 ISP 和 VPN 连接的带宽,理论上你可以减去这些连接时间和数据包来回传输的时间,得到“真实”响应时间,但是更好的主意是将remote JMeter slave 设置为被测系统的“本地”,并从“远程”JMeter 主主机对其进行编排,这样您就可以获得“干净”的结果,而无需这些与网络相关的减速。

    更多信息:Apache JMeter Glossary

    【讨论】:

    • 但是,我认为设置“本地”将不是正确的结果。我的意思是,该 Web 服务将被集成到某个应用程序中,并且它将使用 vpn 来访问该服务。因此,将尝试访问该服务的用户,应用程序将通过 vpn 发出请求并获得响应,并且其网络将通过移动网络“LTE”
    猜你喜欢
    • 1970-01-01
    • 2016-06-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-02
    • 2015-10-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多