【问题标题】:Using Firebase Cloud Functions for SSR without Cold Starts possible? [duplicate]可以在没有冷启动的情况下将 Firebase 云功能用于 SSR? [复制]
【发布时间】:2019-04-16 06:23:50
【问题描述】:

所以我知道冷启动是由于整个架构而产生的,这很好,所以我想在主机上托管我的 SSR 网站并通过云功能使其成为 SSR,这在谷歌搜索时无数示例中可以看到.

我想防止的一件事是即使页面具有一致的流量也会发生冷启动,理论上如果页面具有一致的流量以便频繁执行渲染功能,则不应出现冷启动或执行你我需要记住别的东西吗?

我不希望页面加载时间太长。

【问题讨论】:

  • @DougStevenson 甚至不一样
  • 请解释一下。傻瓜说你不能消除冷启动,这似乎是你在这里问的。

标签: firebase google-cloud-platform google-cloud-functions


【解决方案1】:

没错,只要它具有稳定的流量,您就不会遇到冷启动问题。无服务器架构总是有可能消失,但只要它一直受到打击,它就不应该遭受冷启动问题。如果您使用 Cloud 功能在 Firebase Hosting 上运行来执行 SSR,您还可以利用 firebase cdn 来存储它,因此不需要每次都执行 SSR。

链接到Connect to functionslower down the page 解释了缓存控制。您可以根据需要将其放入缓存中。我过去曾使用它在特定页面上预加载缓存,这样它们就可以在需要时准备好,如果需要,它可以回退到 SSR。

【讨论】:

  • 哦,感谢您提供的信息,我将尝试实现该信息
  • 如果您在这种情况下有经验,但由于它是一个博客,所以一个新帖子每天只会出现 1-2 次,是否可以选择让帖子进入一次firestore 触发了一个预先呈现相关页面的函数,这样我可以在 SSR 的 SEO 优化时使用更少的函数触发器,还是我忽略了什么?
  • 这就是我的建议。我已经设置了类似的东西,其中 onUpdate 的 firestore 触发器将清除缓存中的页面,然后发出将其放入 CDN 的 Web 请求,onCreate 只需发出 Web 请求并将其放入 CDN。要清除而不是访问页面,方法是清除。它还不是 API 中的官方方法,但在一次演讲中提到过。
  • 好的,我会写一些代码,如果你能在我完成后查看函数文件,我将不胜感激。我还没有函数经验,我害怕我犯的错误会降低效率和成本更多
  • 您无法完全消除冷启动,因为 Cloud Functions 可能总是启动一个新的服务器实例来处理不断增加的负载。该新实例将冷启动。您所能做的就是减少问题的严重性,但如果没有自己的服务器 24/7 运行,您就无法消除它。
猜你喜欢
  • 2021-01-02
  • 2020-12-23
  • 2020-11-15
  • 2021-03-22
  • 2020-01-22
  • 2019-11-18
  • 1970-01-01
  • 2021-06-23
  • 2020-11-11
相关资源
最近更新 更多