发送大量通知会产生过多的内存错误

时间:2019-04-11 10:02:57

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

我已将我的应用程序用户的令牌存储在节点名称“令牌”中。

在firebase函数中,我正在创建一个函数,该函数读取5000以上的所有令牌,并向每个令牌发送通知。

即:

return  admin.database().ref('root/tokens/').once('value')
                    .then(function(dataSnapshot){

                            dataSnapshot.forEach(function (snapshot) {

                                var token = snapshot.val(); 
                                admin.messaging().sendToDevice(token, payload, options );

                            }

但是我在Firebase函数日志中遇到错误:

enter image description here

我需要解决什么错误?我需要更改代码吗?

1 个答案:

答案 0 :(得分:1)

该错误消息表明您的Cloud Function内存不足。因此,您将需要增加该功能可以使用的内存,或者减少该功能所需的内存。

要更改可用内存,请查看setting timeout and memory allocation上的文档。


不相关:请考虑使用新的sendAll method of the Firebase Admin SDK来减少需要进行的API调用次数。它将加快代码的执行速度,并可能会稍微减少内存使用。