一、前言
本文主要简单记录一下目前Python下比较流行的Web框架,各个框架的使用安装将在其他文章中说明(文中可以跳转)其实,各个框架都有各自的优势,并没有绝对的优良,只有最适合自己项目的,比如有些适合没有网页的web服务,提供restful接口,有些有网页渲染的web服务。
文中涉及到的框架有如下(顺序没有好坏之分,只是记录的时候是这样的顺序):
1.Django
2.Tornado
3.Flask
4.Twisted
5.Pylons
6.Bottle
7.web.py
8.Quixote
9.web2py
10.uliweb
11.Karrigell
12.Werkzeug
13.TurboGears
14.Pyramid
15.Bobo
16.Albatross
17.CherryPy
18.CubicWeb
19.Weppy
20.Zope2
21.Falcon
22.Pyramid
23.Wheezy.web
24.FastApi
二、分别简单介绍
1.Django
Django是Python写成的企业级开发框架,相对于其他框架,Django的功能是最完整的,它定义了服务发布、路由映射、模板编程、数据处理的一整套功能,本身集成了ORM(支持多种数据库,默认使用SQLite3)、模型绑定、模板引擎、缓存、Session、支持二级路由等诸多功能。Django 遵守 BSD 版权,初次发布于 2005 年 7 月, 并于 2008 年 9 月发布了第一个正式版本 1.0 。Django 采用了 MVT 的软件设计模式,即模型(Model),视图(View)和模板(Template)。
Django配置和简单使用请参考文章:Python配置Django及简单使用
2.Tornado
Tornado是FriendFeed使用的可扩展的非阻塞式Web服务器及相关工具的开源版本,它是Python编写的Web服务器兼Web应用框架。优势比较明显,有以下几点:
①轻量级Web框架
②异步非阻塞IO处理
③出色的抗负载能力
④友谊的处理性能,不依赖多线程/多进程,一定程度上解决C10K问题
⑤WSGI全栈替代产品
Tornado内部使用的是linux的epoll和BSD的kqueue达到高性能处理的目的,所以仅推荐在linux和BSD上使用它。
但是这个框架有一个缺点就是入门门槛相对有点高,下面贴出一篇配置和简单使用的链