每当在Google Cloud SQL中插入或更新数据时,是否可以将消息发布到Google Pub / Sub?

问题描述

我是Google Cloud sql和Pub / Sub的新手。我在任何地方都找不到文档。但是,另一个接受并赞成的问题answer似乎表示,只要数据库中发生插入操作,就可以发布Pub / Sub消息。摘自该答案:

2-理想的解决方案是在将新数据插入数据库时​​创建Pub / Sub主题并将其发布。

但是由于我的问题是另外一个问题,因此我在这里提出了一个新问题。

背景:我将Google Cloud sql,Firestore和实时数据库结合使用,以发挥自己的独特优势。

我想要做的是一旦在Google Cloud sql中成功插入,便能够写入Firestore和实时数据库。根据上面的答案,这是我应该做的步骤:

  1. 该应用程序调用Cloud Function将数据插入Google Cloud sql数据库(Postgresql)。 注意:Postgres表具有一些重要的约束条件并触发Postgres函数,这就是为什么我们要从这里开始。
  2. 插入成功后,我希望Google Cloud sql将消息发布到Pub / Sub。
  3. 然后有另一个Cloud Function订阅了Pub / Sub主题。该功能将相应地写入Firestore /实时数据库

我已经弄清楚了步骤1和步骤3。我正在寻找的解决方案是步骤2。

解决方法

另一个问题的答案只是建议您的代码同时执行以下两项操作:

  1. 写入Cloud SQL。
  2. 如果写入成功,请向pubsub主题发送一条消息。

没有任何东西可以自动化或简化这两个任务。没有针对Cloud Functions的触发器可以响应对Cloud SQL的写入。您为任务1编写代码,然后为任务2编写代码。这两件事都应该简单明了,并应包含在产品文档中。我建议(分别)尝试两者,然后再次使用您所拥有的无法正常运行的代码进行发布。

如果您需要开始使用pubsub,则几乎所有主要服务器平台都有SDK,并且发送消息的文档为2