高负载的Python网页开发
我和我的朋友们打算开发一个网页应用。对我们来说,最常用的编程语言是Python,所以我们想用它来开发。不过,我们在选择合适的工具时有点困惑。因为我们预计会有很高的访问量,所以我们希望从一开始就考虑到这一点。
我们发现Tornado是一个不错的异步非阻塞网页服务器,可能我们还需要一些通过wsgi工作的东西(比如用Beaker来处理会话),但在wsgi服务器模式下,Tornado的异步性能就没那么好了。而且我们还发现wsgi本身并不是为了异步工作而设计的,同时Tornado又是一些有用库(比如asyncmongo)的前提条件,所以我们可能需要在这里做一些取舍,但选择起来很困难。
另外,我们不想使用Django,因为我们不喜欢那种一体化的解决方案。
所以问题是:用Python构建功能齐全的高负载应用的常见方法是什么?具体应该使用哪些库或框架呢?
1 个回答
4
听起来你是在做“过早优化”。处理高负载的正确方法其实很依赖于负载的类型。你能确定你提到的那些问题真的会成为你的瓶颈吗?我建议你选择一些已知比较快的工具,这样将来也能保持灵活性。比如,nginx、wsgi 和 flask/werkzeug 可能是个不错的起点。或者可以看看 twisted 相关的东西。然后开始构建你的应用,测量性能,优化,再进行调整。