首頁 > 後端開發 > Golang > 主體

我應該在 Google App Engine 中為每個請求建立新的 Firestore 用戶端嗎?

Patricia Arquette
發布: 2024-11-23 14:12:19
原創
320 人瀏覽過

Should I Create a New Firestore Client Per Request in Google App Engine?

可以在 Google App Engine 中根據請求建立 Firestore 用戶端嗎?

在 Google App Engine (GAE) 中,關於管理 Firestore 用戶端的最佳方法。本文將解決這個問題,根據所使用的 GAE 運行時闡明最佳實踐。

傳統上,在舊版 GAE 標準運行時中,需要為每個請求建立一個新的 Firestore 用戶端。然而,隨著 GAE 標準引入 Go 1.11 運行時,開發人員現在擁有了更大的靈活性。

對於 Go 1.11 及更高版本的運行時,建議在初始化期間建立單例 Firestore 用戶端,使用 main( ) 或 init() 函數,以及 context.Background()。這允許客戶端在多個請求呼叫之間重複使用。以下是範例:

package main

import "cloud.google.com/go/firestore"

var client *firestore.Client

func init() {
  var err error
  client, err = firestore.NewClient(context.Background())
  // handle errors as needed
}

func handleRequest(w http.ResponseWriter, r *http.Request) {
  doc := client.Collection("cities").Doc("Mountain View")
  doc.Set(r.Context(), someData)
  // rest of the handler logic
}
登入後複製

這種方法不僅更有效率,而且符合在 GAE 上下文中建立 Firestore 用戶端的建議模式。相較之下,為每個請求建立一個新客戶端可能會導致不必要的開銷和不便。

綜上所述,如果在 GAE 標準中使用 Go 1.11 運行時,建議在初始化期間建立單一 Firestore 用戶端並重複使用它對於所有請求呼叫。這種方法提高了效能並簡化了程式碼維護。

以上是我應該在 Google App Engine 中為每個請求建立新的 Firestore 用戶端嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板