Django請求迴應機制html
Django(ORM、URL分發系統、MTV )web
Django是一個開放源代碼的Web應用框架,由Python寫成。採用了MVC的框架模式,即模型M,視圖V和控制器C。它最初是被開發來用於管理勞倫斯出版集團旗下的一些以新聞內容爲主的網站的,即CMS(內容管理系統)軟件。並於2005年7月在BSD許可證下發布。這套框架是以比利時的吉普賽爵士吉他手Django Reinhardt來命名的。面試
Django基於MVC的設計十分優美:正則表達式
-
對象關係映射 (ORM,object-relational mapping):以Python類形式定義你的數據模型,ORM將模型與關係數據庫鏈接起來,你將獲得一個很是容易使用的數據庫API,同時你也能夠在Django中使用原始的SQL語句。數據庫
-
URL 分派:使用正則表達式匹配URL,你能夠設計任意的URL,沒有框架的特定限定。像你喜歡的同樣靈活。django
-
模版系統:使用Django強大而可擴展的模板語言,能夠分隔設計、內容和Python代碼。而且具備可繼承性。服務器
-
表單處理:你能夠方便的生成各類表單模型,實現表單的有效性檢驗。能夠方便的從你定義的模型實例生成相應的表單。cookie
-
Cache系統:能夠掛在內存緩衝或其它的框架實現超級緩衝 -- 實現你所須要的粒度。session
-
會話(session):用戶登陸與權限檢查,快速開發用戶會話功能。app
-
國際化:內置國際化系統,方便開發出多種語言的網站。
-
自動化的管理界面:不須要你花大量的工做來建立人員管理和更新內容。Django自帶一個ADMIN site,相似於內容管理系統
Flask
Flask是一個使用 Python 編寫的輕量級 Web 應用框架。其 WSGI 工具箱採用 Werkzeug ,模板引擎則使用 Jinja2 。Flask使用 BSD 受權。
Flask也被稱爲 「microframework」 ,由於它使用簡單的核心,用 extension 增長其餘功能。Flask沒有默認使用的數據庫、窗體驗證工具。
特點:
自帶開發用服務器和debugger
集成單元測試 (unit testing)
RESTful request dispatching
使用Jinja2(英語:Jinja (template engine)) 模板引擎
支持 secure cookies (client side sessions)
100% WSGI 1.0 兼容
Unicode based
詳細的文件、教學
Google App Engine兼容
可用 Extensions 增長其餘功能
Toenado
Tornado是一種 Web 服務器軟件的開源版本。Tornado 和如今的主流 Web 服務器框架(包括大多數 Python 的框架)有着明顯的區別:它是非阻塞式服務器,並且速度至關快。
得利於其非阻塞的方式和對epoll的運用,Tornado 每秒能夠處理數以千計的鏈接,所以 Tornado 是實時 Web 服務的一個 理想框架。
Tornado就是咱們在 FriendFeed 的 Web 服務器及其經常使用工具的開源版本 。Tornado 和如今的主流 Web 服務器框架(包括大多數 Python 的框架)有着明顯的區別:它是非阻塞式服務器,並且速度至關快。得利於其 非阻塞的方式和對epoll的運用,Tornado 每秒能夠處理數以千計的鏈接,所以 Tornado 是實時 Web 服務的一個 理想框架。咱們開發這個 Web 服務器的主要目的就是爲了處理 FriendFeed 的實時功能 ——在 FriendFeed 的應用裏每個活動用戶都會保持着一個服務器鏈接。