我最近基于数据库(PostgreSQL)中的触发器创建了一个webhook系统。
执行动作时,它会写入特定的表,通知发生了什么。
每分钟(允许最短时间)通过cron运行一个php脚本,该脚本通过cURL调用配置为通过webhook接收通知的地址。
我创建触发器的依据是,该系统在多个位置进行数据插入/更改,并且每个位置都保留一个特殊的Webhook代码很复杂。
问题在于cron每分钟运行一次,对于重要信息,一分钟可能很长一段时间才能收到通知。 有什么方法可以在不影响应用程序性能的情况下从我的数据库中快速读取这些数据?
前段时间,我在一个项目中尝试使用PostgreSQL + NodeJS的LISTEN / NOTIFY,但是,数据库与PostgreSQL + NodeJS的连接不稳定,并且在长时间连接后断开连接。所以我最终选择了不在当前项目中使用它。