0

我们遇到了Firebase访问延迟问题。 我们有使用Firebase SDK的Node.js应用程序。 在代码中,我们向Firebase发出了请求的下一个结果: 1.通过GeoFire获取密钥 2.然后通过并行键获取分支(从3到100)分支。 3.然后通过并行键从另一个实体获取相同数量的分支。 在Javascript中方言的并行请求如下:Firebase访问延迟

const cardsRefs = map(keys, (key) => this.db.ref('cards').child(key)); 
return Promise.all(map(cardsRefs, (ref) => { 
    return ref 
     .once('value') 
     .then((snapshot) => snapshot.val()) 
    }) 
); 

这一切,没有这么大,我想。 但它可能需要很长时间(高达5000毫秒)。我们不能确定这一次,因为它有时可能是700毫秒,有时它可能会更多(高达5000毫秒)。我们预计Firebase在这一点上会有更多可预测的行为。 首先,我们认为错误选择Google Cloud位置的延迟不稳定的原因(代码是在Google Compute Engine上运行的)。我们尝试从us-west1us-central1。请引导我们到正确的数据中心位置。 但是后来我们将代码重写到Google Function中并得到了相同的结果。 请告诉我们,我们如何在Firebase请求中获得更多可预测和可持续的延迟?

回答

1

我们将后端功能迁移到云端功能,情况有所改善。每个功能大约开始工作更快,持续1.5 - 2秒。目前,我们对这种情况感到满意。