实时更新客户端应用程序的技术堆栈
Posted
技术标签:
【中文标题】实时更新客户端应用程序的技术堆栈【英文标题】:Tech Stack for real time updates to client app 【发布时间】:2021-08-14 13:50:24 【问题描述】:我计划为实时记分牌和统计数据创建一个应用程序。用户进行评分,并且必须实时广播给其他用户。我目前使用 postgreSQL 作为我的后端数据库。
用户 --> Feeds 分数 --> 更新数据库 --> 另一个用户实时获取分数更新。
我应该使用一些中间件将我的分数实时广播给在线观看分数的用户吗?
【问题讨论】:
您的帖子可能会被关闭,因为您是在征求意见,而不是针对您遇到的问题提出具体问题。但答案是肯定的,PubNub 将允许您在使用或不使用 Postgres 的情况下轻松广播统计更新。您可以遵循一些最佳实践,但最后,只需通过 PubNub 将统计更新发布到频道,所有监听客户端都会实时更新。 【参考方案1】:PubNub 在数据库提交时发布
这是一个高级设计:
-
向您的服务器发送统计更新
您的服务器将 stat 插入到您的数据库中
您的数据库确认插入成功
您的服务器将统计更新发布到 PubNub 频道
订阅该频道的客户端会收到状态更新
客户端应用更新 UI 以显示统计更新
这是一篇旧的 PubNub 知识库文章 (Can I publish a message via database trigger?),它解决了使用数据库触发器的问题,但也建议使用正确的 two-phase DB commit。
【讨论】:
以上是关于实时更新客户端应用程序的技术堆栈的主要内容,如果未能解决你的问题,请参考以下文章
如何更新堆栈并将克隆的应用程序推送到 Heroku [重复]