我有一个客户端应用程序,需要与服务器紧密同步。到目前为止,我一直在使用民意调查从我的REST框架视图中检索数据。但是请求数量现在太大了,我需要转向服务器推送选项。我已经看了几个选项,比如Pusher,Redis/PubNub ......但是有很多选项,并且很少有关于它的最新文档。如何使用Django REST框架实现实时更新?
用django-rest-framework视图实现实时的最佳方式是什么?
我有一个客户端应用程序,需要与服务器紧密同步。到目前为止,我一直在使用民意调查从我的REST框架视图中检索数据。但是请求数量现在太大了,我需要转向服务器推送选项。我已经看了几个选项,比如Pusher,Redis/PubNub ......但是有很多选项,并且很少有关于它的最新文档。如何使用Django REST框架实现实时更新?
用django-rest-framework视图实现实时的最佳方式是什么?
不熟悉Django作为框架,但我强烈建议从服务器实时更新websockets。典型的方法是使用REST和WS的组合:
State change on Client -> HTTP POST -> Server
Client <- Websocket <- State change on server
DRF不会完成这项工作。
我建议使用Pusher或PubNub。与他们合作非常简单。 另一种选择是Socket.io。
这些服务提供的是推送通知到您的客户端应用程序。 一旦收到通知,您的应用可能会要求DRF提供所需的恢复。
我还没有尝试过,但我认为DRF + Django频道+ Websocket将完成这项工作。我知道这是一个古老的线索,所以我想这会帮助其他人有同样的问题。
阅读:https://blog.heroku.com/in_deep_with_django_channels_the_future_of_real_time_apps_in_django