Django:Python 界最全能的 web 开发框架,battery-include 各类功能完备,可维护性和开发速度一级棒。常有人说 Django 慢,其实主要慢在 Django ORM 与数据库的交互上,因此是否选用 Django,取决于项目对数据库交互的要求以及各类优化。而对于 Django 的同步特性致使吞吐量小的问题,其实能够经过 Celery 等解决,倒不是一个根本问题。Django 的项目表明:Instagram,Guardian。web
Flask:微框架的典范,号称 Python 代码写得最好的项目之一。Flask 的灵活性,也是双刃剑:能用好 Flask 的,能够作成 Pinterest,用很差就是灾难(显然对任何框架都是这样)。Flask 虽然是微框架,可是也能够作成规模化的 Flask。加上 Flask 能够自由选择本身的数据库交互组件(一般是 Flask-SQLAlchemy),并且加上 celery +redis 等异步特性之后,Flask 的性能相对 Tornado 也不逞多让,也许Flask 的灵活性多是某些团队更须要的。redis
Tornado:天生异步,性能强悍是 Tornado 的名片,然而 Tornado 相比 Django 是较为原始的框架,诸多内容须要本身去处理。固然,随着项目愈来愈大,框架可以提供的功能占比愈来愈小,更多的内容须要团队本身去实现,而大项目每每须要性能的保证,这时候 Tornado 就是比较好的选择。Tornado项目表明:知乎。数据库