SaaS 实时更新,无需托管的实时推送服务
最后更新于
Seed 通过它自己 API 的 WebSocket,把每次保存的更改发送到群组的每个已打开标签页,所以在一个窗口保存的笔记,一秒内就会显示在其他窗口中,无需刷新。它运行在你的服务器上,不需要为实时服务付费;你新增的功能只要复制笔记示例就能获得这项能力。
- 标准 WebSocket,每次更改都带有序号
- 从休眠中唤醒的标签页会重新连接,并拉取错过的内容
- 实时同步可以关闭:应用会改为定时轮询,使用体验不变
每次写入都会带着群组的下一个序号提交,API 会把它推送到每位成员已打开的连接。标签页只有在更改的序号紧接着自己已有的最后一个序号时才会应用它;如果出现缺口,就向服务器请求游标之后的所有内容,所以丢失一条消息只会多一次请求,列表绝不会出错。
笔记本电脑从睡眠中唤醒后会重新连接,并拉取错过的内容。关闭 WebSocket 后,应用通过 HTTP 读写,每 30 秒检查一次更改。

Seed 支持实时更新吗?
是的。保存的更改一秒内就会显示在群组的每个已打开标签页中,无需刷新。
我需要 Pusher、Ably 或其他实时服务吗?
不需要。WebSocket 由 Seed 自己的 API 在你的服务器上提供。
笔记本电脑睡眠后,标签页能追上错过的更改吗?
可以。它会重新连接,并拉取它最后一次收到的更改之后的所有更改。
可以关闭实时同步吗?
可以。设置 SPA_REALTIME=false:应用会改为每 30 秒检查一次更改,用起来完全一样。