服务器拓扑有助于Django和Twisted的可能性吗?

2024-04-16 05:51:22 发布

您现在位置:Python中文网/ 问答频道 /正文

我目前正在一个复杂的网页界面和后端工作,这将需要解决几个问题。在

  • 可缩放性
    • 多种不同负载需求的部署
  • 非常结构化的授权组
    • 不同用户组的不同视图
    • 管理面板
      • 用户/内容管理
  • 大型托管数据库
    • 当前
    • 长期存储数据(历史记录)
  • 数据更新
    • 投票
      • 例如,搜索查询、静态页面/文件、按请求生成报告
    • 推动(可能是websockets)
      • 例如,实时通知
  • 不同的协议
    • 例如HTTP、SSL、Websockets

我想使用Python,因为我已经开始真正喜欢这种语言了,我正在考虑将Django和Twisted结合起来。在

我对Django有一些经验,我喜欢Django的MVT风格的应用程序编程、授权模型、管理面板和数据库API。然而,在我所需要的一些数据需求中,尤其是实时性方面,它并不是很强。在

现在,我还没有真正使用过Twisted,但是我看到了很多有趣的东西。特别是异步方面,以及运行许多协议的能力。在

让两者协同工作的问题很明显,因为Django是一个阻塞服务器,Twisted被设计成非阻塞的。我已经看到一些话题说把这两者结合在一起是可能的,并取得了成功。似乎也可以同时运行这两个并代理它们以接受不同的url,但是在这两者之间进行身份验证可能会变得很棘手?在

说到这里,我想问一下,我是不是在正确的轨道上实现了这个系统,以及关于如何将两者结合使用的建议,替代方案,或者我是否应该仅仅淘汰一个(在这一点上,我想应该是Django,因为实时的东西是必要的)。我应该提到,我已经用Django编写了一些初步的数据模型和视图。在

我在客户端(JS,CSS,HTML)方面很有经验,但我对服务器端的东西不是很在行。任何意见都会有帮助的,谢谢。在


Tags: 数据django用户视图数据库面板网页协议