- Python Falcon 教程
- Python Falcon - 主頁
- Python Falcon - 簡介
- Python Falcon - 環境設定
- Python Falcon - WSGI vs ASGI
- Python Falcon - Hello World(WSGI)
- Python Falcon - Waitress
- Python Falcon - ASGI
- Python Falcon - Uvicorn
- Python Falcon - API 測試工具
- 請求和響應
- Python Falcon - 資源類
- Python Falcon - 應用類
- Python Falcon - 路由
- Falcon - 帶字尾的響應器
- Python Falcon - Inspect 模組
- Python Falcon - Jinja2 模板
- Python Falcon - Cookie
- Python Falcon - 狀態碼
- Python Falcon - 錯誤處理
- Python Falcon - Hook
- Python Falcon - 中介軟體
- Python Falcon - CORS
- Python Falcon - WebSocket
- Python Falcon - Sqlalchemy 模型
- Python Falcon - 測試
- Python Falcon - 部署
- Python Falcon 有用資源
- Python Falcon - 快速指南
- Python Falcon - 有用資源
- Python Falcon - 討論
Python Falcon - 部署
可以使用啟用 mod_wsgi 模組的 Apache 伺服器部署 Falcon Web 應用,就像任何 WSGI 應用一樣。另一種選擇是將 uWSGI 或 gunicorn 用於部署。
UWSGI 是一個快速且高度可配置的 WSGI 伺服器。如果與 NGINX 一起使用,它會在生產就緒環境中以速度的形式提供更好的效能。
首先,在 Python 虛擬環境中使用 PIP 安裝程式安裝 Falcon 和 uWSGI,並將 Falcon 的應用程式物件透過 wsgi.py 暴露給 uWSGI,如下所示 −
import os import myapp config = myproject.get_config(os.environ['MYAPP_CONFIG']) application = myapp.create(config)
要配置 uWSGI,準備一個 uwsgi.ini 指令碼,如下所示 −
[uwsgi] master = 1 vacuum = true socket = 127.0.0.1:8080 enable-threads = true thunder-lock = true threads = 2 processes = 2 virtualenv = /path/to/venv wsgi-file = venv/src/wsgi.py chdir = venv/src uid = myapp-runner gid = myapp-runner
你現在可以像這樣啟動 uWSGI −
venv/bin/uwsgi -c uwsgi.ini
儘管 uWSGI 可以直接處理 HTTP 請求,但使用諸如 NGINX 這樣的反向代理可能會有所幫助。NGINX 本身支援 uwsgi 協議,用於向 uWSGI 有效代理請求。
安裝 Nginx,然後建立一個看起來像這樣的 NGINX conf 檔案 −
server {
listen 80;
server_name myproject.com;
access_log /var/log/nginx/myproject-access.log;
error_log /var/log/nginx/myproject-error.log warn;
location / {
uwsgi_pass 127.0.0.1:8080
include uwsgi_params;
}
}
最後啟動 Nginx 伺服器。你應該有一個正在執行的工作應用程式了。
廣告