![](/img/trans.png)
[英]Interacting with firebase firestore from firebase cloud functions
[英]Firestore Query performance issue on Firebase Cloud Functions
我在 firebase https function 上遇到超時問題,所以我決定優化每一行代碼並意識到單個查詢大約需要 10 秒才能完成。
let querySnapshot = await admin.firestore()
.collection("enrollment")
.get()
注冊集合有大約 23k 個文檔,總計大約 6MB。
據我了解,由於 https function 運行在雲 function 無狀態服務器上,因此它不應該受到查詢結果大小的影響。 Firestore 和 Cloud Functions 都在同一區域 (us-central) 上運行。 然而,10 秒確實是執行這種導致小快照大小的簡單查詢的高時間間隔。
一個有趣的事實是,在代碼的后面,我使用 Bulk Writer 用一個新字段更新了那些 23k 文檔,運行 bulkWriter.commit() 只需不到 3 秒。
另一個事實是 https function 沒有向客戶端返回任何查詢結果,因此不應該有任何影響 function 性能的“下載”時間。
為什么從集合中讀取值比寫入值要長 3 倍? 我一直認為 Firestore 架構適用於具有高讀取率的應用程序,而不是寫入。
您有什么建議可以對此進行優化嗎?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.