【问题标题】:GCP App Engine: Random pending requests for static assets (css / images)GCP App Engine:静态资产(css /图像)的随机待处理请求
【发布时间】:2019-11-10 16:32:43
【问题描述】:

我有一个 next.js 应用程序在节点标准环境中的 gcp 应用引擎上运行了几个月。上一次部署是在大约 2 周前完成的,直到本周网站加载都很好。

以下是检测到的异常情况:

  1. css 文件随机卡在“待处理”请求中
  2. png 文件随机卡在“待处理”请求中

在同一 Chrome 实例下的不同选项卡中可以观察到上述随机性。

您可以在这里查看: https://clanhallroyale.com/

令人惊讶的是,这种行为不会在构建时发生 https://seventh-sensor-226609.appspot.com/

这是应用程序的 app.yaml。

# [START runtime]
runtime: nodejs10

handlers:
- url: /.*
  script: auto
  secure: always
# [END runtime]

似乎没有明确的线索表明可能是什么问题。我该如何解决这个问题?

【问题讨论】:

    标签: node.js google-cloud-platform gcloud next.js google-appengine-node


    【解决方案1】:

    我遇到了完全相同的问题。在具有自定义域的 Google App Engine 上运行 next.js 应用程序。

    • CSS 和图像文件随机(我猜大概有 5 到 10 次)卡在“待处理”状态
    • .appspot.com 域上似乎没有出现此问题。仅发生在自定义域上。

    应用程序是https://tsunotte.com(以防万一你想检查它)。

    我所做的可能无法完美解决问题,但似乎至少减少了问题。

    我将 GAE 配置文件 (app.yaml) 处理程序更改为以下:

    handlers:
      - url: /_next/static
        static_dir: .next/static
        secure: always
      - url: /static
        static_dir: static
        secure: always
      - url: /.*
        secure: always
        script: auto
    

    默认情况下,Next.js 从应用服务器提供/static./.next/static 目录下的静态文件。我将静态文件配置为从 GAE/SE 静态服务器提供,以便从 CDN 提供文件,我认为这是在生产环境中运行 Next.js 应用程序的最佳实践,并且似乎减少了我的问题。

    查看reference了解更多详情。

    我不确定为什么这个问题只发生在自定义域应用程序上,以及这个问题是否直到最近才发生(因为我在 3 天前为应用程序配置了自定义域)。

    【讨论】:

      猜你喜欢
      • 2022-07-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-05-18
      • 1970-01-01
      • 1970-01-01
      • 2011-01-28
      相关资源
      最近更新 更多