有没有一种合适的方法可以在插入/更新某个表时触发PostgreSQL数据库中的事件,并向单独的HTTP服务器发送通知?对于一个标准的REST API应用程序,我们通常与DB单向交互。然而,如果后端依赖于DB中某个表的某个字段值,那么DB将数据发送到后端服务器是有意义的。而不是后端重复地轮询DB表中的任何改变,这使得DB被不必要地占用。
对此是否有更好或标准的方法?
有没有一种合适的方法可以在插入/更新某个表时触发PostgreSQL数据库中的事件,并向单独的HTTP服务器发送通知?对于一个标准的REST API应用程序,我们通常与DB单向交互。然而,如果后端依赖于DB中某个表的某个字段值,那么DB将数据发送到后端服务器是有意义的。而不是后端重复地轮询DB表中的任何改变,这使得DB被不必要地占用。
对此是否有更好或标准的方法?
1条答案
按热度按时间t2a7ltrp1#
这就是
LISTEN
/NOTIFY
的作用,应该被通知的应用程序连接到数据库,发出LISTEN channel_name
,然后等待数据到达网络套接字,触发器运行NOTIFY channel_name
,它向等待的会话发送一条消息。