Python學習之Django和其他Python框架有什麼區別?

老男孩IT教育機構發表於2021-01-12

  Web開發是Python的應用領域之一,其包含著各種各樣的開發框架,比如說Django、Flask、Bottle、Pyramid、Tornado等,其中Django、Flask、Tornado是最受歡迎的三大開發框架,那麼Django和Flask、Tornado有什麼區別呢?我們一起來看看吧。

  Django框架和Flask框架的對比:

  Flask是小而精的微框架,它不像Django那樣大而全,如果使用Flask開發,開發者需要自己決定使用那個資料庫ORM、模組系統、使用者認證系統等,需要自己組成。

  與採用Django開發對比,開發者在專案開始的時候可能需要花費更多的時間去了解、挑選各個元件,因此Flask開發的靈活度更高,開發者可以根據自己的需要去選擇合適的外掛。

  當然Flask歷史相對較短,第三方APP自然沒有Django那麼全面。

  Django框架和Tornado框架的對比:

  Tornado是一個Python Web框架和非同步網路庫,最初由FriendFeed 開發,其設計目的主要是為了解決10000個併發連線問題。

  傳統的Apache伺服器會為每個HTTP請求連線一個執行緒,大多數Linux發行版本中預設執行緒堆大小是8MB,連線數量過多時,這種執行緒池的方式極易耗光伺服器所有資源。

  而Tornado會把等待資源的操作掛起,當資料準備好時,再回撥相應函式。

  和Django對比,使用Tornado編寫非同步程式碼對於開發者來說,沒有Django或Flask編寫同步程式碼那麼簡單、直接和高效。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69952527/viewspace-2749260/,如需轉載,請註明出處,否則將追究法律責任。

相關文章