【问题标题】:Push data when SQL is updatedSQL更新时推送数据
【发布时间】:2023-04-01 05:12:01
【问题描述】:

我想设置一个自动知道 SQL 数据库何时更新的 javascript 侦听器。

我正在使用 Pusher(网络服务)接收实时通知。

我不能 100% 确定我应该如何完成这项工作,但这是我的计划:

  1. 设置每 10 秒执行一次 cron 作业以检查数据库是否已更新
  2. 如果是,则将数据发送到Pusher服务器
  3. 我在所有客户端的 JavaScript 中设置了一个推送侦听器
  4. 当数据发送到 Pusher 服务器时,服务器将数据发送给所有客户端并更新数据

这是一张示意图:

这有意义吗?在服务器上使用 cron 作业来检查数据是否已更新是个好主意吗?

【问题讨论】:

  • 听起来像是消息队列或 redis 中的 PubSub 的工作......

标签: javascript pusher


【解决方案1】:

是的,这是有道理的。 (感谢您的图表。)

知道您的更新将在更新后最多 10 秒,加上 Pusher 的延迟时间。

还有两种可能:

  • 应用程序级别每当您的服务器发出查询以更新此信息时,通知 Pusher。

  • 数据库级别使用数据库触发器启动对 Pusher 的请求。这种方法的细节取决于您的 DBMS。

触发器可能有点棘手,所以如果可能,请在您的应用程序服务器中执行此操作。

【讨论】:

  • 谢谢保罗!在哪里可以了解有关数据库触发器的更多信息?这可以直接在数据库中设置吗?
  • @PeterLur,我说过,这将取决于您的数据库(MySQL、SQL Server、Oracle、PostreSQL、SQLite 等)数据库触发器的确切工作方式,以及您如何获取 SQL与“外面的世界”交谈。
猜你喜欢
  • 1970-01-01
  • 2015-02-11
  • 2018-12-16
  • 2014-06-08
  • 1970-01-01
  • 2011-10-26
  • 1970-01-01
  • 2018-01-14
  • 2016-12-08
相关资源
最近更新 更多