Python--uWSGI
uWSDIコマンドuWSGIのプロセスを見る: Nginxを見るプロセス: リストポート占有率: uWSDi起動: Nginxエラーログ: ポートコマンドシステムポートの表示状況: 練習する
1、ファイルを作成するflask_app.py
2、Nginxファイルの構成
3、uWSDIコマンドの実行方法一
実行情報がrunに書き込まれているため、このコマンドラインの下では実行情報、すなわちバックグラウンド実行は発生しない.ロゴの中へ行きました.
エンドモード問い合わせuWSGIPID: uWSDiを閉じる: 方式2
現在のコマンドラインでは、実行情報が印刷され、フロントで実行されます.閉じる方法:Ctrl+c
命令解釈:
uWSDIを構成する別の方法
Nginx構成
uWSDi構成uwsgi.iniプロセス数設定 processes = 4 スレッド数設定 threads = 40 タイムアウト設定 バッファ設置 pythonpath設定、複数可
uid、gid:どのユーザー、グループでサービスを開始しますか?
socket:傍受ipおよびポート
master:メインプロセスの開始
workes:サーバ起動プロセス数
reload-mercy:スムーズな再起動
pidfile:起動時のpidファイル.
daemonize:ログの起動
module:webアプリケーションのエントリモジュール名
enable-threads:スレッドモードを有効にする
ps aux | grep uwsgi
ps aux | grep ngnix
netstat -lpnt
uwsgi --ini uwsgi.ini
vim /usr/local/webserver/nginx/logs/error.log
netstat -anp
1、ファイルを作成するflask_app.py
[root@linux ~]# vi flask_app.py
##### file start ####
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hi,This is a Python Web program use FLASK and Nginx by uWSGI!'
##### file end ###
2、Nginxファイルの構成
location / {
include uwsgi_params;
#uwsgi_pass unix:/home/two/two.sock; #uWSGI Nginx
uwsgi_pass 127.0.0.1:3031; #uWSGI Nginx
}
3、uWSDIコマンドの実行方法一
uwsgi -s 127.0.0.1:3031 -t 30 -M -p 4 --limit-as 128 -R 10000 -w flask_app:app -d /home/two/run.log
実行情報がrunに書き込まれているため、このコマンドラインの下では実行情報、すなわちバックグラウンド実行は発生しない.ロゴの中へ行きました.
エンドモード
ps -ef | grep uwsgi
kill -9 PID
uwsgi -s 127.0.0.1:3031 -t 30 -M -p 4 --limit-as 128 -R 10000 -w flask_app:app
現在のコマンドラインでは、実行情報が印刷され、フロントで実行されます.閉じる方法:Ctrl+c
命令解釈:
-s UNIX/TCP
-p
-w WSGI
-d , /var/log/uwsgi_run.log
-t 30 30s , ,
--limit-as 128 128M
-R 10000 10000 , respawn
———————————————————— uWSDIを構成する別の方法
Nginx構成
http {
include mime.types;
default_type application/octet-stream;
#
client_max_body_size 100M;
client_body_buffer_size 128k;
sendfile on;
keepalive_timeout 100;
server {
listen 80; #
server_name liefyuan.top; #
location / {
include uwsgi_params;
uwsgi_pass 127.0.0.1:5000; # uwsgi , uwsgi
uwsgi_param UWSGI_PYHOME /root/.virtualenvs/env; #
uwsgi_param UWSGI_CHDIR /home/four; #
uwsgi_param UWSGI_SCRIPT main:app; #
}
location /static {
alias /home/four/static;
}
uWSDi構成uwsgi.ini
[uwsgi]
socket = 127.0.0.1:5000
processes = 4 # : , 4
threads = 2
master = true
pythonpath = /home/four
module = main
callable = app
memory-report = true
vacuum = true
wsgi-file = main.py#
stats = 127.0.0.1:5001#
post-buffering = 65536
buffer-size = 65536
daemonize = /home/four/logs/run.log
harakiri-verbose = true
harakiri = 300
post-buffering = 65536
#
buffer-size = 65536
pythonpath = /path1
pythonpath = /path2
pythonpath = /path3
uid、gid:どのユーザー、グループでサービスを開始しますか?
socket:傍受ipおよびポート
master:メインプロセスの開始
workes:サーバ起動プロセス数
reload-mercy:スムーズな再起動
pidfile:起動時のpidファイル.
daemonize:ログの起動
module:webアプリケーションのエントリモジュール名
enable-threads:スレッドモードを有効にする