2016-04-11 25 views
0

私はいくつかのフラスコプログラムを書いています。それをnginxにデプロイするには、uwsgiを使用しています。yumまたはpipからのインストールuwsgiの違いは何ですか?

フラスコプログラムのようないくつかのコードがあります:まず

chdir = ../../bin/ 

wsgi-file = api_uwsgi 
:次に

app,host,port = myFun() 

は私がapi.iniという名前のWSGIの設定ファイルは、以下のような内容を持っているが(私はいくつかのインフォアをelimited)

api_uwsgiは、この後、私は

をuwsgi実行するには、以下のようなコマンドラインを使用して、私のpythonファイル生成アプリ

です

uwsgi --ini apid.ini 

しかし、問題は、uwsigがyumによってインストールされている場合です。ログは次のようなものです:

*** Starting uWSGI 2.0.12 (64bit) on [Mon Apr 11 13:57:30 2016] *** 
compiled with version: 4.8.5 20150623 (Red Hat 4.8.5-4) on 02 January 2016 19:52:54 
os: Linux-3.10.0-327.10.1.el7.x86_64 #1 SMP Tue Feb 16 17:03:50 UTC 2016 
nodename: ES01 
machine: x86_64 
clock source: unix 
pcre jit disabled 
detected number of CPU cores: 8 
current working directory: /opt/flow/etc/uwsgi 
detected binary path: /usr/sbin/uwsgi 
uWSGI running as root, you can use --uid/--gid/--chroot options 
*** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** 
chdir() to ../../bin/ 
your processes number limit is 63466 
your memory page size is 4096 bytes 
detected max file descriptor number: 1024 
lock engine: pthread robust mutexes 
thunder lock: disabled (you can enable it with --thunder-lock) 
uwsgi socket 0 bound to TCP address 127.0.0.1:8001 fd 3 
your server socket listen backlog is limited to 100 connections 
your mercy for graceful operations on workers is 60 seconds 
mapped 518400 bytes (506 KB) for 16 cores 
*** Operational MODE: preforking+threaded *** 
*** no app loaded. going in full dynamic mode *** 
*** uWSGI is running in multiple interpreter mode *** 
spawned uWSGI master process (pid: 28611) 
spawned uWSGI worker 1 (pid: 28615, cores: 4) 
spawned uWSGI worker 2 (pid: 28618, cores: 4) 
spawned uWSGI worker 3 (pid: 28622, cores: 4) 
spawned uWSGI worker 4 (pid: 28624, cores: 4) 
*** Stats server enabled on 127.0.0.1:9191 fd: 15 *** 

アプリケーションがロードされていません!

pip install uwsgiを使用すると、うまくなり、uwsgiのバージョンも同じになります。どうして?

答えて

0

違いは、yum、apt、またはいずれかのパッケージマネージャが使用する場合、配布のuwsgiパッケージはfully modularです。したがって、Python用のプラグインはインストールされません。結局pythonからインストールするのは、pythonのパッケージマネージャーなので、pythonの場合はそうです!その後、あなたのuwsgiコマンドで、あなたは--plugin=pythonを渡す必要があり

yum install uwsgi-plugin-python

と:あなたはそれが仕事を得るためにyumを(yum install uwsgi)からインストールする場合

は、あなたはまた、Pythonのプラグインをインストールする必要があります

関連する問題