javascript - Firebase 云函数 - promise : Is there any limitation to the number of 'promises' that can be added to Promise. all()?

标签 javascript firebase promise google-cloud-firestore google-cloud-functions

所以 Promise.all() 确实让生活变得更简单。

但是可以添加到“Promise.all()”的 promise 数量是否有任何限制

即以下代码中是否有任何数组'promises'的大小限制:-

const promises = [];

    snapshot.forEach(doc => {

        **some code**

        promises.push(
            docRef.set(newData, {merge: true})
        );

    });

    return Promise.all(promises);

-------------------------------------------- --------------------------

进一步说明:

我正在使用此 Cloud Functions 来更新我应用程序上的所有用户。

模型数据库结构:Users/userId

由于用户数量较少,我目前没有遇到任何问题。

但是,随着用户数量的增长我担心我是否会达到一些限制..

并且根据指出的问题:

1) david - 浏览器的最大并发网络请求减慢速度

2) herohtar - 您的功能可用的内存有限

这两个问题表明,也可能存在一些限制。

那么,任何人都可以指向官方文档吗? 或者 来自 Firebase 团队的任何人,如果你们能对此有所启发的话。

最佳答案

如果此函数必须扩展到大量用户,那么在您超过 promise 数量的任何限制之前,您几乎肯定会遇到更多超出函数内存和时间限制的问题。我强烈建议仔细考虑一下,如果你真的想在一个 N 可能非常大的函数中加载和执行 N 个任务。这不是 Cloud Functions 的用途。

如果您确实需要以可扩展的方式执行 N 项任务,并且您必须使用 Cloud Functions,请考虑将您的工作分解为可管理、可预测的大小,并将工作分解为多个函数调用。

关于javascript - Firebase 云函数 - promise : Is there any limitation to the number of 'promises' that can be added to Promise. all()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58497161/

相关文章:

xcode - "No such module ' Firebase '"将 Firebase 添加到库中时

javascript - Firebase,异步检索数据

javascript - 单击图像时,使 CSS 悬停内容保留在图像上

Javascript 在代码后面使用 Literal

swift - 类属性返回 nil

node.js - NodeJS Promise Firebase

javascript - 如何在对 Ember 数据模型进行通用查找后劫持 promise 解决方案?

javascript - 使用 JQuery UI 自动完成显示不显示结果

javascript - 如何使用 ERB 和 JQuery 修改元素样式属性并使用 % 符号值?

javascript - RxJS zip 和管道组合不起作用