多個 Firebase 產品需要位置設置:
Google Analytics — 如果您在 Firebase 項目中啟用 Google Analytics,系統會提示您選擇一個 Analytics 報告位置。此位置代表您所在組織所在的國家或地區。反過來,您的 Analytics 位置設置了收入報告的貨幣。
Cloud Firestore和Cloud Storage — 如果您開始使用這些產品中的任何一個,系統會提示您選擇項目的默認 Google Cloud Platform (GCP) 資源位置(如果在設置其他服務時尚未選擇)。
Cloud Functions for Firebase (僅限計劃函數) ——如果您運行計劃函數,Cloud Scheduler 需要一個 App Engine 應用程序;在其設置過程中,系統會提示您選擇項目的默認 Google Cloud Platform (GCP) 資源位置(如果在設置其他服務時尚未選擇)。
要了解有關非預定功能的位置設置的更多信息,請訪問Cloud Functions Locations 。
實時數據庫- 如果您創建實時數據庫實例,系統會提示您選擇實例的位置,並且每個實例都可以位於不同的位置。請注意,實時數據庫實例的位置不會影響默認 GCP 資源位置的選項。
為一個產品或一組產品選擇位置設置
對於大多數用例,您可以在項目創建期間或在特定產品的控制台頁面中選擇Firebase 控制台中的位置設置。
分析
如果您在Firebase 控制台的Firebase 項目中啟用 Google Analytics,系統會提示您選擇一個 Analytics 報告位置。選擇代表您組織所在位置的國家或地區。
如果您是項目所有者或編輯者,您可以編輯您的 Analytics 報告位置的時區和貨幣;轉到您的Google Analytics 設置,然後滾動到報告窗格。
Cloud Firestore、Cloud Storage 和預定函數
Cloud Firestore、Cloud Storage 和預定函數都共享相同的位置設置,稱為默認 GCP 資源位置(在下面了解有關此位置設置的詳細信息)。請注意,此位置可能之前已設置,在項目創建期間或在設置使用此位置設置的其他服務時。
如果您設置 Cloud Firestore 或 Cloud Storage,系統會提示您在 Firebase 控制台工作流中選擇項目的默認 GCP 資源位置。
對於 Cloud Storage,您的默認 GCP 資源位置僅適用於您的默認存儲桶。如果您使用的是 Blaze 計劃,則可以創建多個存儲桶,每個存儲桶都有自己的位置。
如果您運行計劃函數,Cloud Scheduler 需要一個 App Engine 應用程序。在其設置過程中,系統會提示您選擇項目的默認 GCP 資源位置。
您可以通過調用 Firebase 項目的
defaultLocation.finalize
端點以編程方式設置默認 GCP 資源位置。
實時數據庫位置
如果您創建新的實時數據庫實例,則需要指定該實例的位置。您項目中的每個實時數據庫實例都可以位於不同的位置。下面列出了實時數據庫實例當前支持的位置及其關聯的數據庫 URL 方案。
請注意,實時數據庫實例的位置不會影響默認 GCP 資源位置的選項。
區域名稱 | 地區說明 | 數據庫 URL 方案 |
---|---|---|
us-central1 | 愛荷華州 | DATABASE_NAME .firebaseio.com |
europe-west1 | 比利時 | DATABASE_NAME .europe-west1.firebasedatabase.app |
asia-southeast1 | 新加坡 | DATABASE_NAME .asia-southeast1.firebasedatabase.app |
查看位置設置
對於 Analytics — 在 Firebase 控制台中,轉到您的Google Analytics settings ,然後滾動到Reporting窗格。
對於 Cloud Firestore、Cloud Storage 和預定函數 - 在 Firebase 控制台中,轉到您的項目設置。
對於實時數據庫 - 在 Firebase 控制台中,在實時數據庫數據查看器中查看您的數據庫實例列表。
了解默認的 GCP 資源位置
您的應用程序可用的多項服務需要一個位置設置,稱為項目的默認 Google Cloud Platform (GCP) 資源位置。此位置是為需要位置設置的 GCP 服務存儲數據的位置。
以下產品共享相同的默認 GCP 資源位置:
雲端 Firestore
請注意,您的默認 GCP 資源位置不適用於Firebase 實時數據庫。雲儲存
請注意,您的默認 GCP 資源位置僅適用於您的默認Cloud Storage 存儲桶。如果您使用的是 Blaze 計劃,則可以創建多個存儲桶,每個存儲桶都有自己的位置。App Engine 應用程序(例如,用於預定功能)
如果您設置 App Engine 應用程序,其位置會共享您的默認 GCP 資源位置。請注意,如果您使用 Cloud Scheduler(例如,運行計劃函數),則您的項目中需要有一個 App Engine 應用程序。
您可以選擇多區域位置或區域位置作為默認 GCP 資源位置。請注意,如果您已經擁有位置為us-central
或europe-west
的 App Engine 應用程序,則使用此位置設置的任何 GCP 服務都將被視為multi-regional 。
多區域位置
選擇多區域位置以最大限度地提高數據庫的可用性和持久性。
多區域位置由一組定義的區域組成,其中存儲了數據庫的多個副本。每個副本要么是包含數據庫中所有數據的讀寫副本,要么是不維護完整數據集但參與復制的見證副本。
通過在多個區域之間複製數據,即使整個區域丟失也可以繼續提供數據。在一個區域內,數據會跨區域複製,這樣即使區域丟失,數據也可以繼續在該區域內提供服務。
Firebase 支持以下多區域 GCP 資源位置:多區域名稱 | 多區域描述 | 讀寫區域 | 見證區 |
---|---|---|---|
eur3 | 歐洲 | europe-west1 (比利時)、 europe-west4 (荷蘭) | europe-north1 (芬蘭) |
nam5 | 美國 | us-central1 (愛荷華州)、 us-central2 (俄克拉荷馬州 - 私有 GCP 區域) | us-east1 (南卡羅來納州) |
區域位置
區域位置是特定的地理位置,例如南卡羅來納州。區域位置中的數據被複製到一個區域內的多個區域中。所有區域位置與其他區域位置至少相隔 100 英里。
如果您的應用程序對延遲敏感,或者與其他 GCP 資源共置,請選擇區域位置以降低成本、降低寫入延遲。
Firebase 支持以下區域 GCP 資源位置:區域名稱 | 地區說明 | |
---|---|---|
北美 | ||
us-west1 | 俄勒岡州 | |
us-west2 | 洛杉磯 | |
us-west3 | 鹽湖城 | |
us-west4 | 拉斯維加斯 | |
northamerica-northeast1 | 蒙特利爾 | |
us-east1 | 南卡羅來納 | |
us-east4 | 弗吉尼亞北部 | |
南美洲 | ||
southamerica-east1 | 聖保羅 | |
歐洲 | ||
europe-west2 | 倫敦 | |
| 荷蘭 | |
europe-west3 | 法蘭克福 | |
europe-central2 | 華沙 | |
europe-west6 | 蘇黎世 | |
亞洲 | ||
asia-south1 | 孟買 | |
此位置不支持 Cloud Storage for Firebase。如果您計劃使用 Cloud Storage for Firebase,則應選擇其他位置。 | 德里 | |
asia-southeast1 | 新加坡 | |
asia-southeast2 | 雅加達 | |
asia-east2 | 香港 | |
asia-east1 | 台灣 | |
asia-northeast1 | 東京 | |
asia-northeast2 | 大阪 | |
asia-northeast3 | 漢城 | |
澳大利亞 | ||
australia-southeast1 | 悉尼 | |
此位置不支持 Cloud Storage for Firebase。如果您計劃使用 Cloud Storage for Firebase,則應選擇其他位置。 | 墨爾本 |
下一步
要在特定位置創建 Cloud Firestore 數據庫,請訪問Cloud Firestore 入門。
要創建Cloud Storage 存儲桶,請訪問適用於您的平台的入門頁面。
要使用 Cloud Functions for Firebase 運行預定函數,請訪問設置指南。
有關構建應用程序以滿足您的延遲、可用性和持久性要求的更多信息,請參閱地理和區域。