4
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

firebase Cloud Functions のコールドスタートを minInstances で回避してみる

Last updated at Posted at 2021-09-19

概要

firebase の Cloud Functions のコールドスタートが遅すぎて、nuxt の ssr 側でエラーが発生する(原因はテキトー)ことを回避するために以下の記事を書きましたが、公式が推奨している minInstances も試してみました

firebase Cloud Functions のコールドスタートを cloud schedule (cron実行) で回避してみる

参考

やり方

簡単です。Cloud Functions の定義に .runWith({minInstances: 1})を足すだけ

exports.ssr = functions
  .runWith({
    minInstances: 1,
  }).https.onRequest(async (req, res) => {
  await nuxt.ready()
  return nuxt.render(req, res)
})

公式のガイドだと、.https.onCallの例でしたが、https.onRequestでもいけました
また、minInstancesは、5となってましたが、ケチって1にしてみました

これで初回10秒の遅延 + ssr のエラーが無くなりそうです

注意

料金が $6 (659.94円) かかるとあります。無料枠内かしら...

注: 実行状態を維持する最小インスタンス数を設定すると、アイドル状態のレートで課金が発生します。通常、アイドル状態の関数インスタンスを 1 つウォーム状態に保つための料金は、月額 $6.00 未満です。Firebase CLI では、関数のデプロイ時に最小数のインスタンスを予約した場合の費用を見積もることができます。費用を計算するには、Cloud Functions の料金をご覧ください。
4
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?