Firebase 对 Cloud Storage for Firebase 进行了一些更改,并采取积极的措施来防止我们的平台上出现滥用行为。为此,我们需要更新基础设施,以更好地与 Google Cloud Storage 配额和结算保持一致。
这些基础架构更改的一个结果是,我们很快就会开始要求项目采用随用随付 Blaze 定价方案才能使用 Cloud Storage for Firebase。即使采用 Blaze 定价方案,您仍可获享免费使用量。
请查看以下常见问题解答,了解我们在 2024 年 9 月宣布的更改:
- 对定价方案要求的更改
- 对默认 Cloud Storage for Firebase 存储桶的更改
- 对程序化互动(如 REST API 和 Terraform)的更改
- 对“默认 Google Cloud 资源”的更改
对定价方案要求的更改
如果您想使用 Cloud Storage for Firebase,我们很快就会要求您采用随用随付 Blaze 定价方案。即使采用 Blaze 定价方案,您仍可获享免费使用量。
我们理解,这些更改将需要您花费时间来评估并更改您的 Firebase 项目和工作流程。如果您有任何疑问,请与 Firebase 支持团队联系。
2024 年 9 月宣布的新定价方案要求有哪些?
从
2024 年 10 月 30 日 起,将会发生以下变化:如需使用 Firebase 控制台或 REST API 配置新的默认存储桶,您的项目必须采用随用随付 Blaze 定价方案。
对于在
2024 年 10 月 30 日 之后预配的所有默认存储桶,请注意以下事项:它们将遵循 Google Cloud Storage 定价和用量,该定价和用量为
、US-CENTRAL1
和US-EAST1
中的存储桶提供了“始终免费”层级。US-WEST1
它们的名称格式为
(而不是之前的PROJECT_ID.firebasestorage.app
)。PROJECT_ID.appspot.com
从
2025 年 10 月 1 日 起,将会发生以下变化:- 如要继续访问默认存储桶和所有其他 Cloud Storage 资源,您的项目必须采用随用随付 Blaze 定价方案。即使采用 Blaze 定价方案,任何
默认存储桶也会保留其当前的免费使用量水平。*.appspot.com
- 如要继续访问默认存储桶和所有其他 Cloud Storage 资源,您的项目必须采用随用随付 Blaze 定价方案。即使采用 Blaze 定价方案,任何
详细了解如果您未在此日期之前升级为采用 Blaze 定价方案,会出现什么情况。如果您有任何疑问,请与 Firebase 支持团队联系。
Firebase 为何要对定价方案做出这些更改?
Firebase 致力于确保我们的产品和生态系统的安全。为此,我们对 Cloud Storage for Firebase 进行了一些更改,并采取积极的措施来防止我们的平台上出现滥用行为。这包括更新基础设施,以更好地与 Google Cloud Storage 配额和结算保持一致。
如果我升级为采用 Blaze 定价方案,可以继续免费使用吗?
可以。如果您有 PROJECT_ID.appspot.com
- 已存储 5 GB
- 每天下载 1 GB
- 每天 20,000 次上传
- 每天 50,000 次下载
请注意,从 PROJECT_ID.firebasestorage.app
US-CENTRAL1
US-EAST1
US-WEST1
如何升级为采用 Blaze 定价方案?
如需将您的项目升级为采用随用随付 Blaze 定价方案,您需要将项目与 Cloud Billing 账号关联。您可以使用 Firebase 控制台工作流升级定价方案。
如需升级定价方案,您需要拥有项目的 Owner IAM 角色。
如果您有任何疑问,请与 Firebase 支持团队联系。
我需要在什么时候升级为采用 Blaze 定价方案?
如果您想继续访问 PROJECT_ID.appspot.com
如需将您的项目升级为采用随用随付 Blaze 定价方案,您需要将项目与 Cloud Billing 账号关联。您可以使用 Firebase 控制台工作流升级定价方案。
如果我不将项目升级为采用 Blaze 定价方案,会发生什么情况?
从
2024 年 10 月 30 日 起:如果您尚未在项目中配置默认 Cloud Storage 存储桶,则除非您的项目采用 Blaze 定价方案,否则您将无法配置该存储桶。从
2025 年 10 月 1 日 起:如果您的项目未采用 Blaze 定价方案,则您将无法再对 默认存储桶执行读/写操作。您也无法在 Firebase 控制台或 Google Cloud 控制台中查看存储桶或访问其数据。PROJECT_ID.appspot.com
请注意,所有数据都将保留在您的存储桶中,但在升级为采用 Blaze 定价方案之前,您将无法访问这些数据。
如果您有任何疑问,请与 Firebase 支持团队联系。
如果我的 *.appspot.com
默认存储桶的用量超过免费用量水平,会怎么样?
*.appspot.com
如果您有一个 PROJECT_ID.appspot.com
- 已存储 5 GB
- 每天下载 1 GB
- 每天 20,000 次上传
- 每天 50,000 次下载
如果您有任何疑问,请与 Firebase 支持团队联系。
对默认 Cloud Storage 存储桶的更改
我们理解,这些更改将需要您花费时间来评估并更改您的 Firebase 项目和工作流程。如果您有任何疑问,请与 Firebase 支持团队联系。
我的默认存储桶的名称会发生变化吗?
不会。升级为采用 Blaze 定价方案后,默认 Cloud Storage 存储桶的名称不会发生变化。
如果您在
2024 年 10 月 30 日 之前预配了默认存储桶,那么您的默认存储桶的名称格式始终为 。PROJECT_ID.appspot.com
唯一的例外情况是,如果您删除
存储桶并预配新的默认存储桶。*.appspot.com
如果您在
2024 年 10 月 30 日 当天或之后预配了默认存储桶,那么您的默认存储桶的名称格式始终为 。PROJECT_ID.firebasestorage.app
如果我删除 *.appspot.com
默认存储桶,会发生什么情况?
*.appspot.com
已删除的存储桶无法恢复。请注意,这是所有 Cloud Storage 存储桶的当前行为。
从 PROJECT_ID.appspot.com
您可以改为创建一个新的默认 Cloud Storage 存储桶(如果您的项目采用的是 Blaze 定价方案),其名称格式为 PROJECT_ID.firebasestorage.app
US-CENTRAL1
US-EAST1
US-WEST1
我需要更新应用的代码库吗?
不需要。您不需要更新应用的代码库来适应这些变化。
所有现有的 PROJECT_ID.appspot.com
为了避免服务中断,请务必在 PROJECT_ID.appspot.com
我需要将数据从 *.appspot.com
默认存储桶中移出吗?
*.appspot.com
不需要。您不需要将数据从 PROJECT_ID.appspot.com
只要您在
对程序化互动(如 REST API 和 Terraform)的更改
如果您以编程方式配置或使用默认的 Cloud Storage for Firebase 存储桶(例如,使用 REST API 或 Terraform),请查看以下更改,了解您是否需要更改工作流或应用中的任何内容。
我们理解,这些更改将需要您花费时间来评估并更改您的 Firebase 项目和工作流程。如果您有任何疑问,请与 Firebase 支持团队联系。
在使用 REST API 方面有哪些变化?
从
projects.defaultBucket.create
端点将会发生变化:如需调用此端点,您的项目必须采用随用随付 Blaze 定价方案。
此端点配置的默认存储桶的名称格式为
(而不是之前的PROJECT_ID.firebasestorage.app
)。PROJECT_ID.appspot.com
这些默认存储桶将遵循 Google Cloud Storage 的定价和用量,该定价和用量为
、US-CENTRAL1
和US-EAST1
中的存储桶提供了“永久免费”层级。US-WEST1
projects.defaultLocation.finalize
和projects.availableLocations.list
端点将关闭,并开始返回404: METHOD_NOT_FOUND
错误。如需改为以程序化方式设置资源的位置,则应使用资源专用 API。例如,在调用
projects.defaultBucket.create
和projects.databases.create
时,分别设置默认 Cloud Storage 存储桶和默认 Cloud Firestore 实例的位置。如需详细了解如何替换 REST API 和位置,请参阅常见问题解答:如何为“默认 Google Cloud 资源”设置或获取位置信息?
在使用 Terraform 方面有哪些变化?
从
您无法再使用 Terraform 配置默认的 Cloud Storage for Firebase 存储桶。这是因为您无法再通过 Google App Engine 配置此存储桶。您可以改为执行以下操作之一:
通过调用
projects.defaultBucket.create
来配置存储桶。此 API 尚无法通过 Terraform 使用。通过 Firebase 控制台配置存储桶。请访问控制台的 Storage 部分以开始使用。
此外,请注意以下关于默认 Cloud Storage 存储桶的信息,这些存储桶将于
如需配置默认的 Cloud Storage 存储桶,您的项目必须采用随用随付 Blaze 定价方案。
您不再需要在默认 Cloud Storage 存储桶之前配置默认 Cloud Firestore 实例。
您为默认 Cloud Firestore 实例选择的位置不适用于默认 Cloud Storage 存储桶(这意味着您的默认 Cloud Firestore 实例和默认 Cloud Storage 存储桶可以位于不同的位置)。
默认 Cloud Storage 存储桶的名称格式将为
(而不是之前的PROJECT_ID.firebasestorage.app
)。PROJECT_ID.appspot.com
对“默认 Google Cloud 资源”的更改
“默认 Google Cloud 资源”是指与 Google App Engine 关联的所有项目资源,其中包括以下项目:
- 默认 Cloud Firestore 实例
- 默认 Cloud Storage for Firebase 存储桶(尤其是名称格式为
的那些存储桶)PROJECT_ID.appspot.com
- Google Cloud Scheduler(专门针对第 1 代预定函数)
随着 Firebase 生态系统在过去几年发生了许多变化,Firebase 相关资源与 Google App Engine 的关联也在不断发生变化。
我们理解,这些更改将需要您花费时间来评估并更改您的 Firebase 项目和工作流程。如果您有任何疑问,请与 Firebase 支持团队联系。
“默认 Google Cloud 资源的位置”会发生什么变化?
“默认 Google Cloud 资源的位置”是与 Google App Engine 关联的所有项目资源的位置设置,包括以下内容:
- 默认 Cloud Firestore 实例
- 默认 Cloud Storage for Firebase 存储桶(尤其是名称格式为
的那些存储桶)PROJECT_ID.appspot.com
- Google Cloud Scheduler(专门针对第 1 代预定函数)
在项目中设置其中任一资源时,您会以传递方式设置项目中 Google App Engine 应用的位置。这会进而为与 Google App Engine 关联的所有资源设置位置。
请注意以下几点:
在
2024 年 10 月 30 日 之前预配的任何默认 Cloud Storage 存储桶(名称格式为 )都与 Google App Engine 关联。这有以下含义:PROJECT_ID.appspot.com
- 存储桶的位置将设置与 Google App Engine 关联的资源的位置(例如默认 Cloud Firestore 实例的位置)。
从
2024 年 10 月 30 日 开始预配的任何默认 Cloud Storage 存储桶(名称格式为 )都不会与 Google App Engine 相关联。这有以下含义:PROJECT_ID.firebasestorage.app
配置默认的 Cloud Storage 存储桶将不再设置与 Google App Engine 关联的资源的位置(例如默认 Cloud Firestore 实例的位置)。
配置默认的 Cloud Firestore 实例将不再设置项目的默认 Cloud Storage 存储桶的位置。
现在,您的默认 Cloud Storage 存储桶可用的位置与 Google Cloud Storage 可用的位置相同(而不是仅限于 Google App Engine 可用的那些位置)。
如何设置或获取“默认 Google Cloud 资源”的位置?
“默认 Google Cloud 资源”是指与 Google App Engine 关联的所有项目资源,其中包括以下项目:
- 默认 Cloud Firestore 实例
- 默认 Cloud Storage for Firebase 存储桶(尤其是名称格式为
的那些存储桶)PROJECT_ID.appspot.com
- Google Cloud Scheduler(专门针对第 1 代预定函数)
自 PROJECT_ID.firebasestorage.app
如果您希望设置或获取项目中任何资源的位置,则应改为直接与相应资源进行交互。
默认 Cloud Storage for Firebase 存储桶
在 Firebase 控制台中:
- 在 Firebase 控制台的 Storage 部分中设置和查找默认 Cloud Storage 存储桶的位置。
使用 REST API:
在配置期间,在调用
projects.defaultBucket.create
时设置默认 Cloud Storage 存储桶的位置。请注意,从
2024 年 10 月 30 日 起,调用此端点将需要随用随付 Blaze 定价方案。因此,在尝试创建默认存储桶之前,请确保项目已关联到 Cloud Billing 账号(例如,使用projects.updateBillingInfo
)。使用
projects.buckets.get
获取默认 Cloud Storage 存储桶的位置。
默认 Cloud Firestore 实例
请注意,如果您在
在 Firebase 控制台中:
- 在 Firebase 控制台的 Firestore 部分中设置和查找默认 Cloud Firestore 实例的位置。
使用 REST API:
在配置期间,在调用
projects.databases.create
时设置默认 Cloud Firestore 实例的位置。使用
projects.databases.get
获取默认 Cloud Firestore 实例的位置。
预定函数(第 1 代)
请注意,如果您在
在设置和部署预定函数期间设置其位置。
在 Google Cloud 控制台中,从作业和函数的主题名称获取预定函数的位置 (
)。firebase-schedule-FUNCTION_NAME-REGION