【发布时间】:2019-12-06 15:45:03
【问题描述】:
我有这个 Firebase 功能,该功能已正确部署以在 Firebase 上进行测试:
exports.testDataPoint = functions.database.ref('/testDataPoint/{uid}/{id}/')
.onCreate(event => {
if (event.data.exists()) {
return admin.database().ref("/test/"+event.params.uid+"/accumulate")
.transaction(current => {
return (current || 0) + event.data.val();
})
}
else{
return Promise.resolve(true)
}
});
当我尝试一次写入 10000 个条目的数据时,根本不会触发该功能。但是如果条目数在 1000 左右,函数就会完美触发。 这是我用来写入数据的脚本:
function testGroupWrites() {
let users = {};
for (let i = 0; i < 1000; i++) {
let id = shortId.generate();
let jobs = {};
for (let j = 0; j < 10; j++) {
let uid = shortId.generate();
console.log(uid);
jobs[uid] = 1;
}
users[id] = jobs;
}
db.ref("testDataPoint")
.set(users)
.then(() => {
console.log("written");
})
}
对于不会触发函数的某个点可以写入多少数据有任何限制吗?我正在测试这个场景,因为在我的项目中,firebase 函数将做同样的事情来计算值。 我在我的脚本中使用 Admin SDK 来编写虚拟数据。
【问题讨论】:
-
请指定您在标签中使用的语言
标签: javascript node.js firebase firebase-realtime-database google-cloud-functions