监视数据库更改的最佳方法

Posted

技术标签:

【中文标题】监视数据库更改的最佳方法【英文标题】:best way to monitor for changes on database 【发布时间】:2020-05-15 06:22:41 【问题描述】:

我需要用 java 制作一个 web 应用程序,它提供一个基于 db 表内容的仪表板。 它需要“自动刷新”,并且始终与数据库中的实际数据同步。

对于浏览器 servlet 交互,我可以使用 websockets 或至少长轮询来实现“新鲜”,但我坚持使用 java db 通信。

我可以进行一些轮询,但我确实会收到来自数据库本身的一些“通知”。

有什么方法/一些库可以实现吗?

就我而言,数据库是 oracle,但我也对 postgres 的解决方案感兴趣。

【问题讨论】:

我没有使用过这种复杂的功能,但理论上这种情况正是Continuous Query Notification 的用途。 @JonHeller 这似乎很有用,我从来不知道;谢谢 【参考方案1】:

监测 db 变化 debezium 连接器很好。通过使用它,您将获得 kafka 主题中数据库的每个更改事件。

关于 oracle 看 this 教程

postgresql 看this 教程

【讨论】:

以上是关于监视数据库更改的最佳方法的主要内容,如果未能解决你的问题,请参考以下文章

在linux中监视文件系统更改的最佳方法

监视 Azure 虚拟机上运行的服务/应用程序的最佳方法是啥

PMM:最佳的开源数据库监视解决方案

处理监视器警报过载和脱敏的最佳方法?

监控雪花数据库架构更改的最佳方法?

使用 C++ 在 Linux 中监视磁盘安装的最佳方法?