在冷启动(部署后或3小时后)中,从Firestore请求文档的功能要花费大量的时间,这与快速使用文档的时间不同。
冷启动:
Function execution took 4593 ms, finished with status code: 200
急速开火(一遍又一遍地使用相同功能发送给我):
Function execution took 437 ms, finished with status code: 200
我获取文档的代码非常简单:
function getWorkspaceDocument(teamSpaceId) {
return new Promise((resolve, reject) => {
var teamRef = db.instance.collection('teams').doc(teamSpaceId);
teamRef.get().then(doc => {
if (doc.exists) {
resolve(doc.data());
return;
}
else {
reject(new Error("Document cant be found"));
return;
}
}).catch(error => {
reject(new Error("Document cant be found"));
});
});
}
我正在尝试制作一个Slack机器人,并且Firebase Firestore的缓慢返回在Slacks API中抛出超时。在Firebase上是否有一种方法可以阻止冷启动的发生并使其持续存在?
答案 0 :(得分:1)
如果云功能需要启动新实例,则冷启动时间似乎很正常。这是无服务器功能的一个缺点。
我认为您的实施存在问题。您能显示更多详细信息吗?
以下是有关此主题的漂亮视频: https://youtu.be/v3eG9xpzNXM