導航:首頁 > 編程語言 > nginx如何運行python程序

nginx如何運行python程序

發布時間:2023-10-06 00:57:47

A. nginx+uwsgi+flask搭建後怎麼訪問.py文件

一、介紹

最近開發要用一個測試環境,是這樣的Nginx+uwsgi+flask 的一個結構。下面是一些記錄,在Centos 系統上使用Flask 架構部署一個簡單的python應用。然後使用Nginx作為前端反向代理,設置uWSGI應用網關處理web應用程序。

二、條件

1) 環境要求

B. Python3+Gunicorn+Nginx 部署Flask項目

前言: 之前在本地測試項目的過程中一直使用python app.py的方式來啟動項目,這種方式在本地測試的話還可以,但是在生產環境的話就不能使用這種方式。
原因:
1.可能會出現無響應情況
2.無法支持高並發和多線程
3.無法合理利用伺服器資源

生產環境: Centos7、Python3
需要模塊: Gunicon、Nginx、Flask

一、安裝Gunicorn
Gunicorn是一個高效的Web伺服器,地位相當於Java中的Tomcat。簡單來說gunicorn封裝了HTTP的底層實現,我們通過gunicorn啟動服務,用戶請求與服務相應都經過gunicorn傳輸。
1.創建虛擬環境
項目上傳到伺服器指定目錄下,然後創建python3的虛擬環境,激活並進去虛擬環境,在虛擬環境下可以看到命令前有虛擬環境的名稱。(之前在使用Gunicorn模塊的過程中,沒有使用虛擬環境,導致我啟動項目有一直提示沒有找到gunicorn這個命令,可能是我在使用python全局環境的過程中,有某些模塊影響到這個gunicorn模塊,後面在使用虛擬環境就沒有出現這個問題。)

2.安裝項目所需的模塊

3.安裝gunicorn

二、項目配置啟動
1.創建一個簡易的web程序

2.啟動服務

4--啟動4個進程來分配服務
0.0.0.0--允許任意主機訪問
5000--啟動埠(與nginx轉發的埠一致)
app:目標文件
app:指定模塊

補充部分: gunicorn和nginx關系
gunicorn 可以單獨提供服務,但生產環境一般不這樣做。首先靜態資源(jscssimg)會佔用不少的請求資源,而對於 gunicorn 來講它本身更應該關注實際業務的請求與處理而不應該把資源浪費在靜態資源請求上;此外,單獨運行 gunicorn 是沒有辦法起多個進程多個埠來負載均衡的。

nginx 的作用就是彌補以上問題,首先作為前端伺服器它可以處理一切靜態文件請求,此時 gunicorn 作為後端伺服器,nginx 將會把動態請求轉發給後端伺服器,因此我們可以起多個 gunicorn 進程,然後讓 nginx 作均衡負載轉發請求給多個 gunicorn 進程從而提升伺服器處理效率與處理能力。最後,nginx 還可以配置很多安全相關、認證相關等很多處理,可以讓你的網站更專注業務的編寫,把一些轉發規則等其它業務無關的事情交給 nginx 做。
參考鏈接: https://www.jianshu.com/p/da28ec28ef4b

閱讀全文

與nginx如何運行python程序相關的資料

熱點內容
程序員投行 瀏覽:313
java多線程讀取文件 瀏覽:145
香港外貿伺服器有什麼好處 瀏覽:612
鄧倫參加密室大逃脫結果變成團寵 瀏覽:847
購買文件伺服器怎麼選擇 瀏覽:720
空調壓縮機高壓報警 瀏覽:498
u盤數控程序放哪個文件夾 瀏覽:853
python模擬微信登錄其他APP 瀏覽:301
綁扎鋼筋加密區規范 瀏覽:671
怎麼更換手機壁紙安卓 瀏覽:808
閑魚app賣手機怎麼走驗機 瀏覽:821
安卓三個按鍵音怎麼關閉 瀏覽:64
esp8266手機app源碼 瀏覽:713
伺服器如何建立多個站點 瀏覽:151
加密狗可以在筆記本上做賬嗎 瀏覽:888
學生雲伺服器推薦 瀏覽:509
android銀行卡快捷支付 瀏覽:828
海口手機直播系統源碼 瀏覽:416
怎麼給加密貨幣加圖標 瀏覽:999
phpheader編碼 瀏覽:766