德米特里·波罗霍夫(Dmitri Borohhov)
我们的启动是使用Firebase和Google Cloud的“原生云”。我们正在研究事件驱动的设计,但是很难将其与Firebase或GCP上的特定服务相匹配。
示例:用户通过移动应用程序创建合同草稿(Firestore文档)。我们需要触发以下操作:
- 通过电子邮件和推送通知通知其他参与合同的用户
- 写入通知表,以便用户可以在应用程序中使用“收件箱”并将其标记为已读或已删除
- 生成一个将在一个月内轮询合同的作业,如果它没有更改状态,请删除合同
- 在服务器上运行一系列计算
到目前为止,我们已经设法将这些操作放入Cloud Function触发器中,但是我们的触发器代码变得混乱,并且在极少数情况下,这些操作运行在Cloud Function阈值之上(2GB和9分钟)。
我们计划改善代码库并减少基于触发器的操作:
- 用户正在创建合同(Cloud Firestore)
- Cloud Firestore触发器创建事件(Cloud Functions)
- 需要对其进行处理的服务将订阅事件流并执行适当的操作。(这是什么?)
我已经研究过Pub / Sub,但认为这会太过分了,因为我们不必在GCP之外处理太多服务,而且我们的规模不需要atm。我们可以在Firebase工具范围内实现上述目标吗?
道格·史蒂文森
实际上,Pubsub正是您所需要的。这不是矫kill过正-它是Google Cloud中处理事件订阅的常见且首选的解决方案。实际上,Cloud Functions已经建立在pubsub之上。
Firebase工具实际上提供了自己的界面,用于部署pubsub Cloud Functions。您可以在文档中阅读有关内容。但是,如果您需要的计算能力超出了Cloud Functions提供的能力,Firebase产品将无法为您提供帮助,因此您需要研究Compute Engine等Google Cloud产品。您仍然可能会使用pubsub来通知您选择的后端。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
编辑于
我来说两句