避免出现意外费用

无论您是刚刚开始开发应用,还是已经拥有成熟的正式版应用,都需要确保自己了解费用、知道如何避免意外的费用。

如需了解 Firebase 的结算方式,请参阅 Firebase 定价方案

本页面向您介绍了解和监控使用量和支出水平的重要方面,包括:


测试您的代码

在将代码部署到生产环境之前执行测试是一种很好的做法,原因有很多,比如发现可能会耗费大量资金的错误。 在为应用构建基础架构时,我们强烈建议您先使用 Firebase Local Emulator Suite 在本地执行测试

借助 Local Emulator Suite,您可以在桌面机器本地运行 Cloud FunctionsCloud FirestoreRealtime Database 及其他产品的实例。这不仅可以让您更轻松地快速迭代新功能(尤其是 Cloud Functions),还可以确保不会因在生产环境中测试服务而产生任何 Firebase 费用。

在测试时,请检查以下超出预期使用量和支出的常见原因:

  • 忘记为包含数百万条结果的数据库查询添加限制

  • 导致扇出工作负载过多甚至是造成无限循环的 Cloud Functions 组合



查看您的使用量和支出水平

您需要了解您的应用的正常使用模式,并确保其未超出重要阈值。

查看个别产品的使用量

对于许多产品,您都可以在其 Firebase 控制台的“用量”标签页中查看产品用量。

查看整体项目使用量

您可以在 Firebase 控制台的“使用量和结算”信息中心(前往“项目设置”>“使用量和结算”)中查看项目的整体使用量。

  • 您可以查看每月用量,以及您的用量水平相对于分配的免费用量配额的情况。

  • 点击任一产品可查看每日使用量摘要,以及它的使用量水平相对于分配的免费使用量配额的情况。

请记住,每个产品的使用量配额不同,因此时间轴也有所不同,例如:

  • Cloud FirestoreCloud Storage 的用量按天计算。

  • Cloud Functions 的使用量按月计算。



设置预算提醒电子邮件

Google Cloud Billing 中创建预算并设置预算提醒,可以避免账单出现意外费用。

  • 预算是指您每月计划支出的常规金额。

  • 预算提醒是指在项目超出设定的支出阈值时,系统向您的团队发送的邮件通知。

默认情况下,Firebase 和 Google Cloud 不会根据您的预算和阈值关停服务,因为虽然您的应用可能由于存在错误而导致费用增加,但也可能是应用出现了出乎意料的正增长。在这种情况下,您需要应用正常运行,而不是意外关停。

如果您最近升级到了 Blaze 定价方案,那么您可能已经收到过预算提醒。但是,如果您想详细了解预算提醒、如何设置新提醒或修改现有提醒,那么本部分就是为您准备的!

设置预算和基础预算提醒

本部分将从 Firebase 背景出发,概要介绍预算和预算提醒。如需了解详情,请务必参阅 Google Cloud 文档中的设置预算提醒

以下介绍如何设置预算和基础预算提醒:

  1. 前往预算设置:

    1. Firebase 控制台中访问您的项目,然后前往使用量和结算 > 详情和设置页面

    2. 预算和提醒部分,点击创建第一个预算。系统随即会转到 Cloud 控制台中的预算和提醒页面。

      请注意,如果您已设置预算,则会在此处看到该预算,而不是“创建第一个预算”链接。

  2. 完成以下步骤,设置预算和邮件预算提醒:

    1. 选择现有预算或创建新预算。

    2. 为您的预算指定一个描述性的名称。

    3. 设置预算提醒的范围,包括您希望应用预算提醒的项目和服务。在开始使用预算提醒时,您可能想要选择“所有服务”

    4. 在“金额”>“预算类型”中设置以下选项之一:

      • 固定金额 (A set amount of money) - 在首次启动或测试应用时使用此类型

      • 等于您的项目上个月支出的金额 (An amount equal to what your project spent last month) - 如果您的应用正在稳步增长,而且您不想每个月都更新预算金额,那么可以使用此类型

    5. 设置“预算百分比”提醒。

      • 初始测试时,您可以尝试数个百分比,例如“实际值” (Actual) 的 1%、2%、5% 和 50%

      • 对于生产应用,您可以尝试几个关键百分比,例如“实际值” (Actual) 的 50% 和 100%,以及“预测值” (Predicted) 的 150%。

    6. 设置哪些人应该收到这些电子邮件。

      • 默认情况下,具有适当结算权限的任何人(默认是关联 Cloud Billing 账号的 Billing Account Administrator 和 Billing Account User 角色)都会收到通知邮件。

      • 您也可以向团队中的其他人发送电子邮件。这需要创建 Cloud Monitoring 工作区,然后将基于电子邮件的通知渠道添加到工作区的“提醒”部分。如需详细了解此设置,请访问设置高级结算提醒和逻辑

如果您在设置通知时选择了较低的“预算百分比”(例如 1%),那么您在几小时或几天内就会收到一封电子邮件,告知您的项目已达到此阈值。

后续步骤