2019年3月29日 星期五

好書 : 一次搞定所有 Python Web 框架開發百科全書

這本書是從母校高科大圖書館調借原第一科大藏書, 因有人預約, 這幾天趕緊將我想看的 Django 部分看完並記錄簡單摘要如下 :

一次搞定所有 Python Web 框架開發百科全書 (佳魁, 劉長龍)


Source : 博客來


此書主要介紹四個 Python 網站架站框架 : Django, Flask, Tornado, 以及 Twisted. 在過去 20 幾年裡, Python 社群出現了幾十種網站框架, 目前還持續開發維護的主要就是這四種主流架構 :
  1. Twisted (2000 年) :
    老牌的事件驅動, 非同步模型之高性能程式設計架構, 與前三種專注於 HTTP 應用的框架不同之處是, Twisted 適用於從傳輸層到自訂應用協定的所有網路程式開發, 在不同作業系統採用不同之底層技術以實現高效能網路通訊, 例如在 Windows 使用 IOCP, 在 Linux 使用 epoll.
  2. Django (2003 年) :
    Python 最成熟最負盛名之企業級網站框架, 擁有完整之線上文件與開發社群, 其個模組之間耦合較緊密. 
  3. Tornado (2009 年) :
    支援非同步 I/O, 逾時事件處理, 與程式碼協同作業, 搭配內建高效能可擴充的 HTTP 伺服器可平行處理網頁請求, 在高網路流量時表現強健. 支援 HTML5 標準之 WebSocket, 可實現伺服器與瀏覽器間的雙向即時通訊. 
  4. Flask  (2010 年) :
    以 Werkzeug 與 Jinja2 為基礎發展而成的輕量級可擴充微框架, 訴求可快速佈署微小型專案. 與 Django 不同的是, Flask 預設並未安裝任何 ORM 資料庫元件, 開發者需自行選擇安裝資料庫外掛程式. 
我原本對 Flask 很有興趣, 但由於以前玩 GAE 的關係, 對 Django 的語法較熟悉, 因此還是專心學好 Django 吧! 此書分三篇, 第一篇是前四章, 對 Python, 網頁技術 (HTML, CSS, Javascript, jQuery), 與 ORM 做了摘要介紹, 後面四章則是實戰的專案開發, 是很有編輯概念的一本好書.

參考 :

Python Twisted介绍

Linux 安裝 Nginx+uWSGI 設定 :

$ sudo apt-get install nginx
$ sudo services nginx start (啟動伺服器)
$ sudo services nginx stop  (停止伺服器)
$ sudo services nginx status  (檢視狀態)
$ sudo services nginx restart  (重啟伺服器)

Nginx 相關檔案路徑 :
  1. 程式檔案 : /usr/sbin/nginx
  2. 全域設定檔 : /etc/nginx/nginx.conf
  3. 存取記錄檔 : /var/log/nginx/access.log
  4. 錯誤記錄檔 : /var/log/nginx/error.log
  5. 網站設定檔 : /etc/nginx/sites-enabled/default
Nginx 已預設方式啟動後, 在開發偵錯過程中可能需要調整執行參數, 這些參數分布在全域設定檔 (例如檔案上傳限制, 允許最大用戶連接數, CPU 核心數目等) 與網站設定檔 (例如根目錄預設頁面檔名, 監聽的 IP, 錯誤頁面, 轉發頁面等) 中.

安裝 uWSGI :

pip install uwsgi

沒有留言 :