如何将实时数据发送到 Django 应用程序并将其显示在网页上?
How can i send real time data to a Django application and show it on a webpage?
我正在尝试向我的 Django webapp 添加实时功能。基本上,我想在网页上显示实时数据。
我有一个外部 Python 脚本,它生成一些 JSON 数据,不是大数据,但每秒大约 10 条记录。另一方面,我有一个 Django 应用程序,我希望我的 Django 应用程序接收该数据并将其实时显示在 HTML 页面上。我已经考虑过更新数据库上的数据,然后从 Django 检索它,但是我会有太多查询,因为 Django 会为每个用户每秒查询 DB 1+ 次,而我的外部脚本会写很多每秒数据。
我缺少的是一个 "central" 系统,一种让这两个部分进行通信的方法。我知道这个问题可能不够具体,但是有什么办法可以做到这一点吗?我对 Django Channels 有所了解,但我不知道我是否可以用它做我想做的事;我也考虑过更新 RabbitMQ 队列上的数据,然后从 Django 检索它,但这不是 RabbitMQ 的最佳用途。
那么有没有办法用 Django-Channels 做到这一点?任何类型的建议都将受到赞赏。
我建议使用 Django Channels。您也可以使用 Redis 而不是 RabbitMQ。对于您的情况,Redis 可能是更好的选择。
这是一种方法:http://www.maxburstein.com/blog/realtime-django-using-nodejs-and-socketio/
我正在尝试向我的 Django webapp 添加实时功能。基本上,我想在网页上显示实时数据。
我有一个外部 Python 脚本,它生成一些 JSON 数据,不是大数据,但每秒大约 10 条记录。另一方面,我有一个 Django 应用程序,我希望我的 Django 应用程序接收该数据并将其实时显示在 HTML 页面上。我已经考虑过更新数据库上的数据,然后从 Django 检索它,但是我会有太多查询,因为 Django 会为每个用户每秒查询 DB 1+ 次,而我的外部脚本会写很多每秒数据。
我缺少的是一个 "central" 系统,一种让这两个部分进行通信的方法。我知道这个问题可能不够具体,但是有什么办法可以做到这一点吗?我对 Django Channels 有所了解,但我不知道我是否可以用它做我想做的事;我也考虑过更新 RabbitMQ 队列上的数据,然后从 Django 检索它,但这不是 RabbitMQ 的最佳用途。
那么有没有办法用 Django-Channels 做到这一点?任何类型的建议都将受到赞赏。
我建议使用 Django Channels。您也可以使用 Redis 而不是 RabbitMQ。对于您的情况,Redis 可能是更好的选择。
这是一种方法:http://www.maxburstein.com/blog/realtime-django-using-nodejs-and-socketio/