2011-08-23 47 views
1

我目前正在研究复杂的Web界面和后端,这将需要解决几个问题。服务器拓扑帮助 - Django和扭曲的可能性?

  • Scalablility
    • 多个不同的负载的部署要求
  • 非常结构化的授权组
    • 对于不同的用户组的不同视图
    • 管理面板
      • 用户/内容管理
  • 大管理数据库
    • 当前
    • 长期存储的数据(历史)
  • 数据更新
    • 轮询
      • 例。搜索查询,静态网页/文件,报表生成每个请求
    • 推(可能的WebSockets)
      • 例。实时通知
  • 变化的协议
    • 例。 HTTP,SSL,WebSockets的

我想使用Python,因为我已经成长为真正享受到语言,我正在考虑Django和扭转的,所以一些组合。

我对Django有一些经验,我喜欢它的MVT风格的应用程序编程,授权模型,管理面板和数据库API。但是,在某些数据要求方面,我不需要那么强大,特别是实时方面。

现在,我还没有真正使用扭曲之前,但我看到了很多有趣的事情。特别是异步方面,以及运行许多协议的能力。

让两者一起工作的问题很明显,因为Django是一个阻塞服务器,Twisted被设计为非阻塞的。我已经看到了一些主题,说明使用这两个主题是可能的,并已取得成功。似乎也可以运行两者并将它们代理为接受不同的URL,但是通过两者来验证可能会变得棘手?

说了这么多,我想问一下我是否正在实施这个系统的正确轨道,以及如何一起使用这两者的替代方案或者我应该踢出一个在这一点上,我想它必须是Django,因为实时的东西是必要的)。我应该提到我已经在Django中编写了一些初步的数据模型和视图。

我对事物(JS,CSS,HTML)的客户端有相当的经验,但我在服务器端并不那么聪明。任何输入都会有帮助,谢谢。

+0

您是否考虑过像Tornado这样的异步Web服务器? (http://www.tornadoweb.org/) –

回答

1

你绝对可以使用Twisted with Django。有几个项目有used the two together效果很好。 twistd web --wsgi provides a basic way to get it set up,还有Alex Clemesha在github上的a great example with more bells and whistles, like static content

+0

我以前遇到过Alex Clemesha的链接,但想问这个问题,因为我看到很多帖子说这两个可能不是最好的。与Evennia的联系非常有见地,因为它是一个成功的项目。感谢您的输入。 – jyore