LoginSignup
21
6

More than 5 years have passed since last update.

Firebase Functions の割り当てメモリを変更する

Posted at

この前の記事で作ったnode.jsの関数ですが、実は使ってると問題がありました。
何回か実行してると突然無反応になるんです。
というか、落ちてるっぽいんです。

最初は、なんやこれー?と悩んだんですが、途中で気づきました。
これ、使ってる辞書のデータがデカすぎてメモリオーバーフローしてんじゃない?

落ちてる箇所は安定しないのですが、ほぼ必ず二回以上しりとりを繰り返すとエラーとなってるようです。
やっぱそれっぽい。

確かに辞書データ、ファイルにすると5MBぐらいいってるんで、キツいんでしょうか。そもそもデフォルトのメモリっていくつやねん。

ということで調べてみました。

Firebase Functions と Cloud Functions

Firebase Functionsにデプロイした関数は、実際にはGoogle CloudのCloud Funcstionsにデプロイされます。

Google Cloud はここから行きます。
https://cloud.google.com/?hl=ja

Googleのプロジェクトは全てのサービスで共有されてるので、ここのコンソールでFirebaseで作成したプロジェクトを選択できます。
そこからCloud Funstionsを選択すると、すでに関数が追加されています。

Cloud Functions の割り当てメモリ

Cloud Functionsのスペックはここら辺に書いてあります。
https://cloud.google.com/functions/pricing?hl=ja

デフォルトの割り当てメモリは 256MB です。

Cloud Functionsの割り当てメモリ変更

めちゃくちゃ分かりづらいのですが、Cloud Functionsページで関数名を選択すると詳細ページに行きます。
右端のメニューボタンは削除とかログとかのショートカットです。関係ないので注意してください。

関数.png

トップのメニューから編集を選択。

編集.png

割り当てられるメモリで、今より多めのメモリを選択して保存します。

メモリ.png

メモリ選択.png

一度変更すると保存されるので、再度デプロイしてもそのままです。

所感

1GBに変更すると特に問題なくなりました。よかったよかった。

しかし、256MBもあるのに5MB程度のデータアクセスで落ちるってのも解せないんすよね。

以上です。

21
6
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
21
6