为什么要做实时数据推送?
简单来说,使用实时数据推送可以更有效率的拉取数据,在某些场景会非常有用,比如可以用来做弹幕,聊天室,协同办公,做实时排名更新,做实时刷新,可以帮助我们做小程序动态页面,用户的体验更加流畅。
话不多说,我用一个demo演示来做个对比。demo模拟的是一个投票场景,比如我们常见的票选班干部。
Demo演示1 - 常规数据库操作
1)用户登入。
2)用户进行投票。
3)后端数据库新增投票记录。
4)前端统计投票结果,生成排名和投票记录。
可以看到常规的数据库操作,它是没有实时更新数据的,用户投票后,需要重新加载页面才能看到最新的结果。
而如果用实时数据库操作,页面又会是怎样一种效果?
Demo演示2 - 实时数据推送
1)用户登入。
2)监听数据库数据变化。
3)用户进行投票。
4)后端数据库新增投票记录。
5)后端推送数据变化结果给到前端。
6)前端接收数据,生成实时排名结果和投票记录。
这里我用了两个模拟设备进行演示,可以看到当有用户进行投票时,数据能够马上更新上来,无需重新加载页面,其他用户也能实时看到数据的变化。
这样一对比,实时数据推送对小程序开发的作用就很明显了,简单罗列几点特点:
1)自动接收数据更新推送。
2)前端页面实时更新。
3)用户体验提升。
4)提高页面的响应速度(无需重载)。
实时数据库(WebSocket)
对于不懂后端的小伙伴,想要用实时数据推送功能,可以用知晓云SDK来做,核心功能是知晓云的实时数据库(WebSocket)。
知晓云的实时数据库功能可以实现订阅数据表的数据增删改变化,当表数据改变时,小程序端可以实时接收到数据的变化。
实时数据推送的应用场景十分丰富。比如聊天室、弹幕、文章新评论、文档协作等等场景就十分需要。
知晓云的实时数据库操作指南:
https://doc.minapp.com/js-sdk/schema/websocket.html