我们可以使用Node.js监视MySQL复制是否成功吗?

我们正在构build一个连接到MySQL数据库的Node.js应用程序。 这个应用程序的主要目的是pipe理一个体育赛事; pipe理条目,绘制,结果等。我们在一个托pipe服务提供商(全球实例)托pipe这个应用程序,但是因为我们不想冒任何在事件地点的互联网连接失败的风险,我们也想成为能够运行与全局实例通信的服务器的本地实例。

本地实例必须是特定事件的“主”实例,我们希望用它来编辑匹配信息。 我们希望使用全球实例作为“发布”服务器,为网站上的观看者提供实时匹配信息。

所以我们打算做以下事情:

在全局实例(MySQL)上:掌握'主'数据库(包含用户信息等)和从属事件特定数据库。

在本地实例(MySQL)上:从属“主”数据库并掌握事件特定的数据库。

一旦我们在本地事件数据库中保存了一个结果,它就会开始将这些信息复制到全局数据库中。

问题

我们的问题是我们想尽快发布实况赛事信息。 但是我们不知道如何判断全局node.js应用程序的数据库是否已经更新。 在MySQL数据库上长时间轮询似乎不是一个好主意。 从本地发送事件到全局node.js应用程序可能是一个解决scheme,但是本地应用程序需要知道复制完成的时间。

我们长期以来一直在思考这个问题。 有没有办法生成一个Node.js事件,当复制准备好了,还是有一个完全不同的方法,我们可以用来获得相同的结果?

MySql Enterprise Monitor允许使用SMTP或SNMP报告复制事件。

有两个节点模块,例如SNMP的node-snmp-server或SMTP的simplesmtp 。

因此,可以在MySQL Enterprise Monitor中configuration警报,并在节点进程中实现侦听器来接收通知。