【问题标题】:Benchmarking Nginx against Express针对 Express 对 Nginx 进行基准测试
【发布时间】:2017-12-30 21:27:50
【问题描述】:

我在我的 express 应用程序前将 Nginx 设置为反向代理。

因此,到达 Nginx 的每个请求都被代理以表示在 4 个端口上运行。 Nginx 和 express 都运行在同一台主机上。

在阅读了所有静态内容应该由 Nginx 提供并且 Express 应该只用于动态请求之后,我试了一下并设置了 Nginx 配置。它完美地工作。所以现在所有的 JS / CSS 和 HTML 资源都由 Nginx 自己提供。

现在我如何证明这是一个更好的数字设置?我应该使用一些工具来模拟请求(对旧设置和新设置),并比较资产的平均加载时间吗?

【问题讨论】:

    标签: node.js express nginx


    【解决方案1】:

    打开浏览器 => 开发工具 => 网络

    在这里您可以看到每个请求的网络等待时间和下载时间。因此,您可以打开您的网页并将其与两个配置进行比较。 这对本地环境很有帮助,因此延迟对测试的影响最小。

    除此之外,您还可以进行负载测试。 Google 负载测试工具!

    【讨论】:

    • 开发者工具我认为不会很有说服力。毕竟我会触发多少电话?负载测试似乎是一个更好的选择 - 触发一个很大的数字。调用次数,然后比较平均加载时间。
    • @MayurArora 两者都有不同的视角。浏览器将从单个用户的角度为您提供性能改进。负载测试还将考虑资源占用参数。
    【解决方案2】:

    一句话,“基准”。您有两种配置。您需要了解每个模型下的效率。为此,您需要检测主机以收集有关有限资源(CPU、磁盘、内存、网络和相关子统计信息)以及响应时间的数据。

    任何使用 HTTP 接口并允许在被测时收集和聚合监控数据的性能测试工具都可以解决问题。您应该能够收集有关通过您的站点的最常见路径、任何给定时间段内系统上的用户数量、平均会话持续时间(迭代间隔)的信息,所有这些都来自对日志的检查。然后,最常见的遍历将成为您需要使用性能测试工具复制的业务流程的基础。

    如果您之前没有参与过性能测试工作,那么这将是标记您组织中持续进行这项工作的人员的好时机。学习曲线很陡(如果您以前没有这样做过并且您没有培训或指导)相当长。您可以在糟糕的测试/基准执行上花费很多周期,然后才能真正将配置 A 与配置 B 的性能进行比较。

    【讨论】:

      猜你喜欢
      • 2012-02-02
      • 1970-01-01
      • 2023-03-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多