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

Zen*_*nko 5 postgresql google-cloud-sql firebase google-cloud-pubsub google-cloud-firestore

我是 Google Cloud SQL 和 Pub/Sub 的新手。我在任何地方都找不到关于此的文档。但另一个问题的接受和赞成的答案似乎是说,只要数据库发生插入,就可以发布发布/订阅消息。摘录自该答案:

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

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

背景:我的应用程序结合使用了 Google Cloud SQL、Firestore 和实时数据库,以发挥其独特的优势。

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

  1. 该应用程序调用 Cloud Function 将数据插入 Google Cloud SQL 数据库 (PostgreSQL)。注意:Postgres 表有一些重要的约束和触发器 Postgres 函数,这就是我们要从这里开始的原因。
  2. 插入成功后,我希望 Google Cloud SQL 向 Pub/Sub 发布一条消息。
  3. 然后还有另一个订阅 Pub/Sub 主题的 Cloud Function。该函数将相应地写入Firestore /实时数据库。

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

Dou*_*son 2

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

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

没有任何东西可以自动化或简化这些任务。Cloud Functions 没有任何触发器可以响应对 Cloud SQL 的写入。您为任务 1 编写代码,然后为任务 2 编写代码。这两件事都应该简单明了并包含在产品文档中。我建议(分别)尝试两者,并使用您拥有的未按预期方式工作的代码再次发布。

如果您需要开始使用 pubsub,几乎每个主要服务器平台都有 SDK,发送消息的文档位于此处