当从 Google 云中调度这些事务时,Firestore 事务的性能是否会发生显着变化?

Does the performance of Firestore transactions change significantly when those transactions are dispatched from within Google Cloud?

目前,我有许多 Firebase 函数在本地测试时对它们的性能不满意。这些函数中最慢的部分是 Firestore 事务,尽管它们只是相对较短的一系列获取和设置。将这些系列拆分为单个事务 and/or 批处理并未充分提高性能。

因此,在我尝试任何其他策略之前,我想研究一下从 Cloud Function 内调用时与 Firestore 进行交易的相对性能,即从 [=15] 内调用=],从外面。我还没有找到任何能完全回答我的问题的东西。有什么建议或答案吗?

Does the performance of Firestore transactions change significantly when those transactions are dispatched from within Google Cloud?

交易涉及客户端机器 运行 SDK 代码 运行 交易和 Google 托管 Firestore 数据的云后端之间的网络往返。按理说,减少这些机器之间的网络延迟将减少执行交易所需的时间。确定您的特定情况是否有改进的唯一方法是执行一些基准测试。

您最好的情况可能涉及同一 Google 云区域中的客户端和后端。因此,如果您在与 Firestore 实例相同的区域使用 Cloud Functions,那么从理论上讲,这应该是最佳选择。同样,只有基准测试才能说明会有多少改进(如果有的话)。这是否“重要”取决于您的基准观察(以及您对“重要”的期望)。