【发布时间】:2012-11-05 19:25:22
【问题描述】:
我们正在设置一个 Python REST Web 应用程序。目前,我们正在使用 WSGI,但我们可能会在未来对其进行一些更改(例如,使用 Twisted 来改进可伸缩性或其他一些特性)。我真的很想得到一些关于什么被认为是 Python 中的 Web 应用程序的良好架构的帮助。
一般来说,我们的应用程序提供动态内容,处理来自客户端的中等到高级别的数据,执行非常高需求的数据库、网络和文件系统调用,并且应该“轻松”可扩展(此处引用是因为如果解决方案很棒但为可扩展性配置有点困难,它肯定会被认为是好的)。我们可能希望在中长期内将其发展为高度并行的应用程序。 Google App Engine 不是一个被接受的建议,主要是因为它的成本。
我的问题是这样的:
- 使用 WSGI 是个好主意吗?我们应该改用 Twisted 之类的东西吗?
- 我们应该使用 Apache 作为静态文件的反向代理吗?
- 我们是否应该考虑一些不同的模式或架构 我没有提到? (即使完全显而易见)。
对此的任何帮助将不胜感激。非常感谢!
【问题讨论】:
-
如果您投票结束问题,请评论原因。写这个问题的人显然下了很大功夫。
-
您绝对应该将 WSGI 用于 Python 中与 Web 相关的任何内容——它只是一组用于应用程序与服务器通信的协议。 Twisted 和所有其他框架都可以运行 WSGI 应用程序。
-
我希望我可以发表反对关闭投票。
标签: python rest web-applications