日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
部署PythonuWSGI具體步驟

uWSGI是一個Web服務器,它實現(xiàn)了WSGI協(xié)議、uwsgi、http等協(xié)議。Nginx中HttpUwsgiModule的作用是與uWSGI服務器進行交換。

堅守“ 做人真誠 · 做事靠譜 · 口碑至上 · 高效敬業(yè) ”的價值觀,專業(yè)網(wǎng)站建設服務10余年為成都紙箱小微創(chuàng)業(yè)公司專業(yè)提供企業(yè)網(wǎng)站建設營銷網(wǎng)站建設商城網(wǎng)站建設手機網(wǎng)站建設小程序網(wǎng)站建設網(wǎng)站改版,從內(nèi)容策劃、視覺設計、底層架構、網(wǎng)頁布局、功能開發(fā)迭代于一體的高端網(wǎng)站建設服務。

WSGI是一種Web服務器網(wǎng)關接口。它是一個Web服務器(如nginx,uWSGI等服務器)與web應用(如用Flask框架寫的程序)通信的一種規(guī)范。

以 Ubuntu/Debian 為例,先安裝依賴包:

apt-get install build-essential python-dev

Python 安裝 uWSGI

1、通過 pip 命令:

pip install uwsgi

2、下載安裝腳本:

curl http://uwsgi.it/install | bash -s default /tmp/uwsgi

將 uWSGI 二進制安裝到 /tmp/uwsgi ,你可以修改它。

3、源代碼安裝:

wget http://projects.unbit.it/downloads/uwsgi-latest.tar.gz
tar zxvf uwsgi-latest.tar.gz
cd uwsgi-latest
make

安裝完成后,在當前目錄下,你會獲得一個 uwsgi 二進制文件。

第一個 WSGI 應用

讓我們從一個簡單的 “Hello World” 開始,創(chuàng)建文件 foobar.py,代碼如下:

def application(env, start_response):
   start_response('200 OK', [('Content-Type','text/html')])
   return [b"Hello World"]

uWSGI Python 加載器將會搜索的默認函數(shù) application 。

接下來我們啟動 uWSGI 來運行一個 HTTP 服務器,將程序部署在HTTP端口 9090 上:

uwsgi --http :9090 --wsgi-file foobar.py

添加并發(fā)和監(jiān)控

默認情況下,uWSGI 啟動一個單一的進程和一個單一的線程。

你可以用 –processes 選項添加更多的進程,或者使用 –threads 選項添加更多的線程 ,也可以兩者同時使用。

uwsgi --http :9090 --wsgi-file foobar.py --master --processes 4 --threads 2

以上命令將會生成 4 個進程, 每個進程有 2 個線程。

如果你要執(zhí)行監(jiān)控任務,可以使用 stats 子系統(tǒng),監(jiān)控的數(shù)據(jù)格式是 JSON:

uwsgi --http :9090 --wsgi-file foobar.py --master --processes 4 --threads 2 --stats 127.0.0.1:9191

我們可以安裝 uwsgitop(類似 Linux top 命令) 來查看監(jiān)控數(shù)據(jù):

pip install uwsgitop

結合 Web 服務器使用

我們可以將 uWSGI 和 Nginx Web 服務器結合使用,實現(xiàn)更高的并發(fā)性能。

一個常用的nginx配置如下:

location / {
   include uwsgi_params;
   uwsgi_pass 127.0.0.1:3031;
}

以上代碼表示使用 nginx 接收的 Web 請求傳遞給端口為 3031 的 uWSGI 服務來處理。

現(xiàn)在,我們可以生成 uWSGI 來本地使用 uwsgi 協(xié)議:

uwsgi --socket 127.0.0.1:3031 --wsgi-file foobar.py --master --processes 4 --threads 2 --stats 127.0.0.1:9191

如果你的 Web 服務器使用 HTTP,那么你必須告訴 uWSGI 本地使用 http 協(xié)議 (這與會自己生成一個代理的–http不同):

uwsgi --http-socket 127.0.0.1:3031 --wsgi-file foobar.py --master --processes 4 --threads 2 --stats 127.0.0.1:9191

部署 Django

Django 是最常使用的 Python web 框架,假設 Django 項目位于 /home/foobar/myproject:

uwsgi –socket 127.0.0.1:3031 –chdir /home/foobar/myproject/ –wsgi-file myproject/wsgi.py –master –processes 4 –threads 2 –stats 127.0.0.1:9191

–chdir 用于指定項目路徑。

我們可以把以上的命令弄成一個 yourfile.ini 配置文件:

[uwsgi]
socket = 127.0.0.1:3031
chdir = /home/foobar/myproject/
wsgi-file = myproject/wsgi.py
processes = 4
threads = 2
stats = 127.0.0.1:9191

接下來你只需要執(zhí)行以下命令即可:

uwsgi yourfile.ini

部署 Flask

Flask 是一個流行的 Python web 框架。

創(chuàng)建文件 myflaskapp.py ,代碼如下:

from flask import Flask

app = Flask(__name__)

@app.route('/')
def index():
   return "I am app 1"

執(zhí)行以下命令:

uwsgi --socket 127.0.0.1:3031 --wsgi-file myflaskapp.py --callable app --processes 4 --threads 2 --stats 127.0.0.1:9191

分享文章:部署PythonuWSGI具體步驟
標題鏈接:http://m.5511xx.com/article/dpciepc.html