我们的初创公司是使用Firebase和Google Cloud的“云原生”。我们正在研究事件驱动设计,但是我很难将这个概念与Firebase或GCP上的特定服务相匹配。
例如:用户通过移动应用程序创建合同草案(Firestore文档)。我们需要触发以下操作:
到目前为止我们设法将那些动作放入云函数触发器中,但我们的触发器代码变得凌乱,而且在极少数情况下,操作运行超过云函数阈值(2GB和9分钟)。
我们改进代码库和减少基于触发器的操作的计划:
我已经调查了pub/sub,但认为这是一个矫枉过正的做法,因为我们不需要处理太多GCP之外的服务,我们的规模也不需要ATM。我们能在Firebase工具的范围内实现上述目标吗?
Pubsub实际上正是你所需要的。这并不是矫枉过正--这是Google Cloud中处理事件订阅的常用且首选的解决方案。事实上,Cloud Functions已经构建在PubSub之上。
Firebase工具实际上为部署pubsub云功能提供了自己的接口。您可以在文档中了解到这一点。但是,如果你需要比云功能提供的更多的计算能力,那么Firebase产品将无法帮助你,你将需要查看像Compute Engine这样的谷歌云产品。您仍然可能使用pubsub通知您选择的后端。