如何让客户端服务器在没有发送请求的情况下显示更新的数据?

问题描述 投票:0回答:1

我为一家餐厅设计了一个应用程序,其中一个功能是用户可以在线下订单,并且订单状态为待处理,直到餐厅收银员或餐厅管理人员通过接受或拒绝转换状态 所以我想在有挂单时向客户发送通知,或者管理员或收银员知道现在创建了挂单而无需更新或刷新客户页面

所以我的问题是如何让后端服务器发送到客户端浏览器通知,而不需要客户端刷新页面或向后端服务器发送请求

  • 我使用 django 休息框架
  • 我听说过 websocket 和 Django 频道
  • 我也听说过 SSE
  • 我还读到客户端框架每 n 分钟发送请求以更新页面

我需要知道实现这个的最佳方法是什么,是否有另一种技术,如果有大量负载或数百万用户使用的应用程序,什么最适合服务器

django django-rest-framework websocket real-time django-channels
1个回答
1
投票

例如——你可以在 nodejs + express + socket.io 或 asp.net + signalR 上实现全状态服务。如果客户打开有订单状态的页面,则客户通过 websocket 连接到您的服务。如果连接许多客户端,此解决方案将允许仅扩展服务,您还应该考虑服务与 django 上的一般应用程序之间的通信,例如使用 rabbit 或 kafka 或其他。您也可以使用此服务获得新的实时功能

© www.soinside.com 2019 - 2024. All rights reserved.