Tìm hiểu về vị trí cho các sản phẩm và tài nguyên trong dự án của bạn

Sản phẩm hoặc tài nguyên cần có chế độ cài đặt vị trí

Một số sản phẩm hoặc tài nguyên yêu cầu cài đặt vị trí.

Sản phẩm Vị trí mặc định Thông tin khác
Firebase AI Logic
  • Đối với Gemini Developer API: Không thể chọn vị trí; luôn là toàn cầu.
  • Đối với Agent Platform Gemini API (formerly Vertex AI): Nếu bạn không đặt vị trí, khu vực mặc định sẽ là us-central1.
Đây là vị trí bạn truy cập vào mô hình.
Google Analytics Không có vị trí mặc định.
Bạn phải đặt vị trí này.
Vị trí này là Analytics vị trí báo cáo2, đại diện cho quốc gia hoặc khu vực của tổ chức của bạn. Analytics vị trí báo cáo của bạn sẽ đặt đơn vị tiền tệ cho báo cáo doanh thu.
Firebase App Hosting Không có vị trí mặc định.
Bạn phải đặt vị trí này cho từng phần phụ trợ.
Vị trí này là nơi quá trình triển khai App Hosting tạo từng tài nguyên phụ trợ của bạn.
Mỗi phần phụ trợ có thể nằm ở một vị trí khác nhau.
Firebase SQL Connect Không có vị trí mặc định.
Bạn phải đặt vị trí cho từng thực thể.
Mỗi phiên bản có thể nằm ở một vị trí khác nhau.
Cloud Firestore 1 Không có vị trí mặc định.
Bạn phải đặt vị trí cho từng thực thể.
Mỗi phiên bản có thể nằm ở một vị trí khác nhau.
Firebase Realtime Database Không có vị trí mặc định.
Bạn phải đặt vị trí cho từng thực thể.
Mỗi phiên bản có thể nằm ở một vị trí khác nhau.
Cloud Storage for Firebase 1 Không có vị trí mặc định.
Bạn phải đặt vị trí cho từng bộ chứa.
Mỗi bộ chứa có thể nằm ở một vị trí khác nhau.
Cloud Functions for Firebase 1 Nếu bạn không đặt vị trí, thì khu vực mặc định là us-central1. Mỗi hàm có thể nằm ở một vị trí khác nhau.

1 Tuỳ thuộc vào thời điểm bạn bắt đầu sử dụng các sản phẩm này trong dự án, có thể có các phần phụ thuộc về vị trí giữa các sản phẩm này. Bạn có thể thấy phần phụ thuộc này được gọi là "vị trí cho tài nguyên Google Cloud mặc định". Tìm hiểu thêm về mối phụ thuộc vào vị trí này.

2 Vị trí báo cáo Analytics của bạn không ảnh hưởng đến nơi Google có thể xử lý và lưu trữ dữ liệu khách hàng cho Firebase.

Đặt vị trí cho sản phẩm hoặc tài nguyên của sản phẩm

Đối với một số sản phẩm, bạn đặt vị trí ở cấp sản phẩm. Tuy nhiên, đối với hầu hết sản phẩm, bạn đặt vị trí ở cấp tài nguyên (ví dụ: cho mỗi bộ chứa Cloud Storage hoặc mỗi hàm).

Sản phẩm Thời điểm và cách đặt vị trí Địa điểm thuộc phạm vi cung cấp
Firebase AI Logic
  • Đối với Gemini Developer API: Không thể chọn vị trí; luôn là toàn cầu.
  • Đối với Agent Platform Gemini API (formerly Vertex AI): Khi khởi động dịch vụ phụ trợ Agent Platform trong toàn bộ mã nguồn, bạn có thể tuỳ ý chỉ định một vị trí để truy cập vào mô hình.
    Nếu bạn không chỉ định vị trí, thì khu vực mặc định sẽ là us-central1.
Firebase AI Logic vị trí
Google Analytics Khi bật Google Analytics trong dự án Firebase của mình trong bảng điều khiển Firebase, bạn sẽ được nhắc chọn một vị trí báo cáo Analytics. Bạn nên chọn quốc gia hoặc khu vực đại diện cho vị trí của tổ chức.

Nếu là Chủ sở hữu hoặc Người chỉnh sửa dự án, bạn có thể chỉnh sửa múi giờ và đơn vị tiền tệ cho vị trí báo cáo Analytics của mình sau; hãy chuyển đến phần Google Analytics cài đặt, sau đó chuyển đến ngăn Báo cáo.

Xem danh sách trong ngăn Cài đặt Google Analytics > Báo cáo.
Firebase App Hosting Khi tạo phần phụ trợ App Hosting, bạn sẽ được nhắc chọn một vị trí. Bạn có thể sử dụng bảng điều khiển Firebase, API REST hoặc CLI Firebase để tạo phần phụ trợ. App Hosting vị trí
Firebase SQL Connect Khi cung cấp một phiên bản dịch vụ SQL Connect, bạn sẽ đặt vị trí của phiên bản đó. Bạn cũng đặt vị trí của thực thể Google Cloud SQL được liên kết.
Bạn có thể sử dụng bảng điều khiển Firebase hoặc CLI Firebase để cấp phép một thực thể.
Dịch vụ SQL Connect và vị trí của thực thể Cloud SQL
Cloud Firestore 1 Khi cấp phép một thực thể cơ sở dữ liệu Cloud Firestore, bạn sẽ đặt vị trí của thực thể đó. Bạn có thể sử dụng bảng điều khiển Firebase, API REST, CLI Firebase hoặc Terraform để cấp phát một phiên bản. Cloud Firestore vị trí
Firebase Realtime Database Khi cấp phép thực thể Realtime Database, bạn sẽ đặt vị trí của thực thể đó.
Bạn có thể sử dụng bảng điều khiển Firebase, API REST, Firebase CLI hoặc Terraform để cấp phát một phiên bản.
Realtime Database vị trí
Cloud Storage for Firebase 1 Khi cấp phép bộ chứa Cloud Storage, bạn sẽ đặt vị trí của bộ chứa đó.
Bạn có thể sử dụng bảng điều khiển Firebase, API REST hoặc Terraform để cấp phát một bộ chứa.
Cloud Storage for Firebase vị trí
Cloud Functions for Firebase 1 Khi viết một hàm, bạn có thể tuỳ ý đặt khu vực của hàm đó.

Nếu bạn không chỉ định vị trí, thì khu vực mặc định sẽ là us-central1.

Cloud Functions for Firebase vị trí

1 Tuỳ thuộc vào thời điểm bạn bắt đầu sử dụng các sản phẩm này trong dự án, có thể có các phần phụ thuộc về vị trí giữa các sản phẩm này. Bạn có thể thấy phần phụ thuộc này được gọi là "vị trí cho tài nguyên Google Cloud mặc định". Tìm hiểu thêm về mối phụ thuộc vào vị trí này.

Xem chế độ cài đặt vị trí

Sản phẩm Nơi xem chế độ cài đặt vị trí
Firebase AI Logic
  • Đối với Gemini Developer API: Không thể chọn vị trí; luôn là toàn cầu.
  • Đối với Agent Platform Gemini API (formerly Vertex AI): Trong toàn bộ mã nguồn, hãy tìm phần khởi chạy dịch vụ phụ trợ Agent Platform. Nếu bạn không chỉ định vị trí, thì vị trí mặc định sẽ là us-central1.
Google Analytics Trong bảng điều khiển Firebase, hãy chuyển đến phần cài đặt Cài đặt dự án > Tích hợp > Google Analytics. Nhấp vào số tài khoản để mở tài khoản Google Analytics, sau đó chuyển đến bảng điều khiển Quản trị để tìm thông tin vị trí của tài khoản.
Firebase App Hosting
  • Trong bảng điều khiển Firebase, hãy chuyển đến trang App Hosting để xem danh sách các phần phụ trợ và vị trí của chúng.
  • Để xem vị trí của một phần phụ trợ cụ thể, bạn có thể sử dụng lệnh CLI Firebase firebase apphosting:backends:get --project PROJECT_ID BACKEND_ID
Firebase SQL Connect Trong bảng điều khiển Firebase, hãy chuyển đến trang SQL Connect để xem danh sách các phiên bản cơ sở dữ liệu và vị trí của các phiên bản đó.
Cloud Firestore Trong bảng điều khiển Firebase, hãy chuyển đến thẻ Cloud Firestore Dữ liệu để xem danh sách các phiên bản cơ sở dữ liệu và vị trí của các phiên bản đó.
Firebase Realtime Database Trong bảng điều khiển Firebase, hãy chuyển đến thẻ Dữ liệu của Realtime Database để xem danh sách các phiên bản cơ sở dữ liệu và vị trí của các phiên bản đó.
Cloud Storage for Firebase Trong bảng điều khiển Firebase, hãy chuyển đến thẻ Cloud Storage Files (Tệp) để xem danh sách các bộ chứa và vị trí của các bộ chứa đó.
Cloud Functions for Firebase
  • Hàm theo lịch: Trong bảng điều khiển Google Cloud, hãy chuyển đến Cloud Scheduler để xem danh sách chủ đề cho từng công việc và hàm. Vị trí là phân đoạn cuối cùng trong tên của chủ đề.
  • Hàm không theo lịch: Trong mã nguồn của hàm, hãy tìm tham số region. Nếu bạn không chỉ định khu vực, thì vị trí mặc định sẽ là us-central1.

Có thể có các phần phụ thuộc về vị trí do "vị trí cho tài nguyên mặc định của Google Cloud"

"Vị trí cho tài nguyên Google Cloud mặc định" là chế độ cài đặt vị trí cho mọi tài nguyên dự án liên kết với Google App Engine, bao gồm:

  • thực thể cơ sở dữ liệu Cloud Firestore mặc định
  • Cloud Storage mặc định cho bộ chứa Firebase có định dạng tên là *.appspot.com
  • Google Cloud Scheduler được dùng riêng cho các hàm theo lịch thế hệ thứ 1

"Vị trí cho tài nguyên Google Cloud mặc định" này là một chế độ cài đặt không thể thay đổi. Ngoài ra, khi đặt vị trí cho một trong các tài nguyên được liên kết, bạn sẽ gián tiếp đặt vị trí cho tất cả các tài nguyên đó do mối liên kết chung của chúng với App Engine.

Tuy nhiên, do có nhiều thay đổi đối với hệ sinh thái Firebase và Google Cloud trong những năm qua, nên mối liên kết giữa tài nguyên với App Engine cũng thay đổi. Đáng chú ý nhất là kể từ ngày 30 tháng 10 năm 2024, tất cả Cloud Storage mặc định mới được cấp cho bộ chứa Firebase đều có định dạng tên là *.firebasestorage.app và không liên kết với App Engine.

Sau đây là thông tin chi tiết về những thay đổi có thể xảy ra đối với các phần phụ thuộc về vị trí:

  • Kể từ ngày 30 tháng 10 năm 2024, nếu phiên bản Cloud Firestore mặc định và bộ chứa Cloud Storage cho Firebase mặc định chưa được cấp phép:

    • Việc cấp phép thực thể Cloud Firestore mặc định sẽ đặt vị trí cho mọi ứng dụng App Engine được cấp phép trong dự án sau này. Tuy nhiên, việc này không quyết định vị trí của bộ chứa Cloud Storage mặc định trong tương lai.

    • Việc cấp phép bộ chứa Cloud Storage mặc định không còn cấp phép một ứng dụng App Engine nữa. Do đó, vị trí của bộ chứa Cloud Storage mặc định không quyết định vị trí của thực thể Cloud Firestore mặc định trong tương lai.

  • Kể từ ngày 30 tháng 10 năm 2024, nếu thực thể Cloud Firestore mặc định đã được cấp phép, nhưng bộ chứa Cloud Storage mặc định cho Firebase chưa được cấp phép:

    • Thực thể Cloud Firestore mặc định hiện có không quyết định vị trí của bộ chứa Cloud Storage mặc định trong tương lai (*.firebasestorage.app).
  • Kể từ ngày 30 tháng 10 năm 2024, nếu Cloud Storage mặc định cho bộ chứa Firebase đã được cấp phép (cụ thể là bộ chứa *.appspot.com), nhưng thực thể Cloud Firestore mặc định chưa được cấp phép:

    • Khi bộ chứa Cloud Storage mặc định (*.appspot.com) được cấp phép, một ứng dụng App Engine cũng được cấp phép, do đó, vị trí của thực thể Cloud Firestore mặc định trong tương lai đã được đặt tại thời điểm đó. Ngay cả khi xoá bộ chứa *.appspot.com, bạn cũng không thể xoá ứng dụng App Engine, vì vậy, chế độ cài đặt vị trí của thực thể Cloud Firestore mặc định trong tương lai đã được đặt.

Nếu bạn đã sử dụng các hàm theo lịch thế hệ thứ 1, thì vị trí của các hàm đó sẽ được đặt thành vị trí cho tài nguyên Google Cloud mặc định. Điều này là do Cloud Scheduler và App Engine trước đây có mối liên kết với nhau. Ngoài ra, nếu bạn thiết lập các hàm theo lịch thế hệ thứ 1 trước khi cung cấp các tài nguyên khác có chung chế độ cài đặt vị trí này, thì bạn cũng đặt vị trí cho các tài nguyên đó.

Các bước tiếp theo

  • Để biết thêm thông tin về cách xây dựng ứng dụng đáp ứng các yêu cầu về độ trễ, khả năng hoạt động và độ bền, hãy tham khảo bài viết Địa lý và khu vực.