python - Django 必须不断更新支持的更新信息
问题描述
我需要有关 Django 的技术建议,我什至不知道在哪里寻找大方向。
现在,我有一个跟踪工作/轮班时间表的应用程序。这是一个带有 Django 后端的 Android/iOS 应用程序,我是后端工程师。当用户更新他们的日程安排并对我们的服务器进行备份时,手机会发送一长串请求。此序列以“backup”URI 开始,以“vacationData”URI 结束。备份成功后,我的服务器将收到的最后一个请求将是“vacationData”URI。我想要实现的是:就像在 Google 电子表格中一样,每当用户更新他们的日程并进行备份时,“共享日程”URI 必须相应地更新。我开始使用侦听“vacationData”URI 的 Django Signals 设置“共享计划”URI。但是,现在我意识到唯一的用户将 GET 请求发送到“ 有没有办法将更新的(新备份的)日程信息发送给客户,无论他们是否请求?当我想到 Google 电子表格时,我的计算机并不是每 0.5 秒就不断地向 Google 服务器发送 GET 请求,但我仍然可以实时看到其他人在做什么。那么在这种情况下我应该实施什么样的技术呢?服务器端的大图架构是什么样的?有没有办法将更新的(新备份的)日程信息发送给客户,无论他们是否请求?当我想到 Google 电子表格时,我的计算机并不是每 0.5 秒就不断地向 Google 服务器发送 GET 请求,但我仍然可以实时看到其他人在做什么。那么在这种情况下我应该实施什么样的技术呢?服务器端的大图架构是什么样的?
非常感谢,本周休息愉快!
PS:由于没有导师,我不知道在哪里可以问这样一个笼统的问题。我知道 StackOverflow 社区更喜欢非常具体的技术问题。如果我需要一些关于我应该在哪里寻找我想要实现的目标的指导,或者如果我对开发有一个非常笼统的问题,那么哪个社区最适合这个?
解决方案
您可以实现一个客户端脚本,GET
每隔几秒发送一个请求以从后端提取最新数据。事实上,根据您描述的用例,这可能是最简单的解决方案 - 假设客户端具有稳定的互联网连接。
但是,如果您正在寻找一种更复杂的解决方案,从长远来看可以更好地为您服务,您可能正在寻找 web-socket 技术。幸运的是,Django 有一个包,django-channels
可以做到这一点:
推荐阅读
- neo4j - neo4j 的性能问题
- vue.js - 在另一个 props 的验证器中访问 props 值
- python-3.x - zarr.consolidate_metadata 产生错误:“memoryview”对象没有属性“decode”
- python - 带有 MXNet 的 Keras 中的 Conv3D:张量形状错误
- html - My SCSS stylesheet isn't linking to my HTML
- python - Ylabel 重新调整范围并以 0% 结束
- testing - 运行测试时“错误”登录终端
- c# - 如何在基于 cookie 的身份验证中从 HttpContext 获取过期时间?
- c# - 访问密钥或密钥为空,com.amazonaws.auth.InstanceProfileCredentials
- blueprism - Blue Prism 如何在 MS Word VBO 中编写集合