node.js - 使用 Nodejs 和 Postgresql 数据库实现通知系统的最佳方法
问题描述
目前我正在开发一个反应应用程序,用户可以在其中发布和评论以及喜欢一个帖子。
所以我做了所有事情,但还有一件事我想做的就是在用户发布或评论之后收到通知等等。
所以假设我在数据库(PostgreSQL)中有一个名为“posts”的表,当用户称为“A”创建帖子,该帖子插入数据库,然后我想收到通知说用户“A”使用该帖子的ID创建了一个帖子,我认为这里的主要想法是观看表格帖子的数量以及每当新的原始插入通知触发时。
我搜索了很多资源,发现我可以使用 Pusher、web-socket,但老实说,如果没有找到实现这一目标的最佳方法,我无法做出决定。那么我如何得到通知,因此在表“posts”中插入了一个新行?
先感谢您。
解决方案
Postgres 具有LISTEN/NOTIFY
您可以与表上的插入触发器结合使用的功能posts
。
然后某些进程可以监听这些通知并确定将通知发送给谁(通过您选择的任何传输方式)。
但是,我认为您最好为通知添加一个具体表,以便用户可以看到在未连接到通知传输时发生的通知。
推荐阅读
- angular - 如何包装primeng复选框标签的文本?
- python - 为什么在迭代 NumPy 数组时 Cython 比 Numba 慢得多?
- c# - 如何将 newPositions 距离设置为更接近原始小队成员位置?
- algorithm - 所有经过 2 点的路线的建议
- java - 在java中,我读到在实例化一个类时,它总是在堆上创建。这是否意味着实例化的对象是一个引用?
- powershell - 使用 Invoke-Command 但出现错误“一个或多个计算机名称无效”
- python - 如何解决以下问题:'ValueError:无法分配“2”:“Actie.actie_gebruiker_id”必须是“Gebruiker”实例。'?
- ios - 检查应用程序以在 Swift 中与 UIActivityViewController 共享文本
- css - 如何使用引导程序在左侧显示图像并在右侧显示内容
- java - 保存具有一对多关系的实体会覆盖数据库更改或相关实体