Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
有没有办法限制Firebase';什么是燃烧计划?_Firebase_Google Cloud Firestore_Algolia - Fatal编程技术网

有没有办法限制Firebase';什么是燃烧计划?

有没有办法限制Firebase';什么是燃烧计划?,firebase,google-cloud-firestore,algolia,Firebase,Google Cloud Firestore,Algolia,我目前在一个社交网络应用程序中工作,我需要做一个搜索功能。Firestore不支持此类查询,因此我需要使用类似Algolia的外部服务 问题是免费计划不支持连接到除谷歌自己的网站/API之外的外部网站/API,因此我无法连接到Algolia以使我的搜索系统正常工作 我读过多篇关于开发人员由于代码中的循环或错误而支付高额账单的故事,由于Blaze计划是一个按需付费的计划,他们使用的东西会被收取费用。如果循环生成10TB的文件,他们将为此收取费用 我也知道Blaze plan的功能是免费的,只要每个

我目前在一个社交网络应用程序中工作,我需要做一个搜索功能。Firestore不支持此类查询,因此我需要使用类似Algolia的外部服务

问题是免费计划不支持连接到除谷歌自己的网站/API之外的外部网站/API,因此我无法连接到Algolia以使我的搜索系统正常工作

我读过多篇关于开发人员由于代码中的循环或错误而支付高额账单的故事,由于Blaze计划是一个按需付费的计划,他们使用的东西会被收取费用。如果循环生成10TB的文件,他们将为此收取费用

我也知道Blaze plan的功能是免费的,只要每个功能(单独)都低于free Spark plan的限制

正如我的问题所说,有没有办法设定限制?例如,我想告诉Firebase将我的云函数调用限制为每月100k。这样的话,它将是免费的,我将永远无法得到超过10万,因为它是有限的,这意味着我将永远不会得到这方面的账单


考虑到我现在唯一需要的付费计划是连接外部网络。我不需要其他任何东西,因为我们才刚刚开始,而且应用程序还没有投入生产,所以不需要太大的限制。

每个Firebase项目也是一个谷歌云平台项目。这意味着谷歌云平台的许多高级功能也可用于Firebase项目

例如,您可以为您的Firebase项目设置计费警报,以便在使用量达到某个级别时向您发出警报。虽然您无法将其配置为在某个时候关闭项目,但该警报通常可以很好地提醒您异常的使用模式

有关这方面的更多信息,请参见:

  • 在最近的一篇博客文章中
  • 这是Firebase在引擎盖下使用的
GCP文档现在也有一节介绍了。不过,这是一种蛮力方法,可能会导致数据丢失,因此我建议首先调查所有其他选项


更新(2020年12月):Firebase的Todd Kerpelman刚刚使用上述文档中的流程发布了一份报告。

此处的屏幕截图似乎显示了Firebase项目的支出限额设置:

该设置页面位于此处(支出限额设置显然仅在您设置项目账单后显示):

在海报的例子中,它被禁用了,但我认为这只是因为他将它连接到了一个“NodeJS应用程序引擎应用程序”,而对于许多Firebase开发者来说,情况并非如此

我自己还没有尝试过,但一旦我开始了一个付费计划,我就会这么做


编辑:是的,一旦切换到付费计划,设置就会显示。(在我的例子中,Blaze)我还没有足够的流量来确认它是否能按预期工作,但如果我以后发现它不能工作,我将在这里提供更新。

您现在无法设置应用程序的支出限制

截至2019年12月12日,您不能再创建支出限制,但 您可以更改或删除现有的支出限制

您可以创建预算,当达到预算时将向您发出警报。但当达到预算时,它不会停止使用

“此示例演示如何通过禁用云计费来限制项目的成本并停止使用。这将导致所有谷歌云服务终止该项目的非免费层服务。”


我要说的是,对于像将内容镜像到Algolia这样的东西,编写意外循环是非常困难的。只有当您有一个触发器(例如写回数据库的数据库触发器)执行某些操作而没有检测到适当的退出条件并提前终止时,才会发生意外循环。如果您只想将数据复制到数据库之外,而不想回写到数据库中,那么编写循环的可能性为0。在这种情况下,我完全同意您的看法。但我们将使用许多Firestore工具,而不仅仅是外部连接。我们已经在不断地使用函数、数据库和存储,我们很快就会扩展它们,并更多地使用它们。这就是我担心会发生意外循环的地方,特别是考虑到这是我们第一次使用Firebase和大规模后端开发。如果我们现在有一个循环,我们将受到免费计划的限制,我们将得不到账单。但如果Blaze计划中出现这种情况,即使我们能够设法“取消”它,也会非常恼人。在部署到生产环境之前,您可以在一个暂存区测试代码中是否存在类似的错误,这可能会对您有所帮助,因为在生产环境中,这将非常昂贵。无论如何,所有Firebase项目也是谷歌云项目,所以,无论谷歌云提供什么,你都可以访问。根据副本,这并不多。@DougStevenson你知道谷歌为什么禁用“支出限制”吗?我可以将其设置为0美元,但不确定它是否有效,因为我没有使用足够的帐户来超过自由限制。支出限制已被取消。重要提示:云Firestore不再支持新的应用程序引擎支出限制。2019年12月12日之后,您不能申请新的应用程序引擎支出限额。12月12日之前设定的支出限额仍然适用。难以置信。保护Firestore客户免于破产(由于人为错误或DDOS攻击)的功能已经存在。但谷歌删除了它@塞巴斯蒂安:你能提供一个关于他们拥有和移除它的来源吗?@Daniyel.Me来源在上面的答案中。过去可以设定“硬”支出限制。这是我所需要的全部,但它已经消失了。似乎账单警报和封顶可以延迟几天!请参阅您的链接:“在发生费用和收到预算通知之间有长达几天的延迟。这是由于从发生时起的使用延迟造成的。”