【问题标题】:Load test of web application with high number of users (50,000 Users)具有大量用户(50,000 个用户)的 Web 应用程序的负载测试
【发布时间】:2016-08-01 07:22:26
【问题描述】:

我们有一个 MVC Web 应用程序,我们希望对这个应用程序进行 50k 用户的负载测试。目前我们正在使用 J Meter 从非 GUI 模式进行分布式测试。我们能够使用 10 台不同的机器模拟 7k 用户(主从配置)。

但是要实现 50k 用户,我们需要大量的机器,这是一个繁琐的过程。是否有任何免费工具可以实现这一目标。

【问题讨论】:

  • 如果您的 Web 应用程序中有 50K 用户,那么一台服务器应该可以解决此问题。请记住,50K 总用户与 50K 并发用户不同(这就像 Facebook 或 Google 的流量水平)。
  • @halfer 可以,我们不希望有 50k 并发用户。
  • 好的,考虑到这一点,您还需要多台机器吗?如果您正在进行负载测试,我希望您会想要真正的机器而不是虚拟机,或者虚拟机是否适合您的目的?无论哪种方式,您都可以尝试像 Ansible 或 Puppet 这样的 devops 工具。

标签: performance jmeter performance-testing load-testing stress-testing


【解决方案1】:

50k 用户!= 50k 并发请求。

  1. 用户不会不停地锤击应用程序,他们需要一些时间在操作之间“思考”
  2. 用户必须等到下一页加载

所以

  • 如果用户在两次操作之间“思考”10 秒且页面加载时间为 2 秒,则每个用户每分钟将发出 5 个请求
  • 50k 用户每分钟将发送 250k 请求
  • 每分钟 250k 请求约为每秒 4150 个请求

根据您的应用程序的性质,这些数字可能会有所不同,但是如果您可以模拟 7k 并发请求,您应该能够将它们转换为 50k 并发用户。

看看JMeter Timers,有多种实现允许:

【讨论】:

    【解决方案2】:

    我希望其他人已经回答了你关于并发用户的观点。如果您仍需要使用云解决方案(代理)对其进行测试,这里是通过 VSTS Azure 数据中心进行 20,000 分钟免费 Web 负载测试的链接 - https://msdn.microsoft.com/library/vs/alm/test/performance-testing/getting-started/getting-started-with-performance-testing

    您可以在线购买额外的时间,并在不同区域的多个 VM 中分发您的测试。

    【讨论】:

      猜你喜欢
      • 2013-02-16
      • 2017-07-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多