導航:首頁 > 編程語言 > 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程序相關的資料

熱點內容
什麼是適合自己的app 瀏覽:451
雲伺服器怎麼補漏洞 瀏覽:176
如何看自己的安卓是什麼等級 瀏覽:633
被丁磊挖走的程序員 瀏覽:19
gsk980ta編程 瀏覽:507
單片機離線 瀏覽:84
解壓助眠敲擊外國長指甲 瀏覽:421
3次元編程 瀏覽:803
夫妻傳送英文命令 瀏覽:316
程序員題代做 瀏覽:950
戴爾伺服器怎麼擴大內存 瀏覽:641
解壓包密碼消失 瀏覽:135
昆侖通態觸摸屏用戶窗加密 瀏覽:564
農信app怎麼看日額 瀏覽:865
iphone備忘錄包含視頻無法加密 瀏覽:283
抖音快手紅包源碼 瀏覽:137
程序員資源分析 瀏覽:586
linux交換分區大小 瀏覽:922
mt怎麼編譯 瀏覽:337
qq郵箱打開pdf 瀏覽:461