2016-04-11 2 views
0

Ich schreibe ein Flaschenprogramm. Um es auf nginx zu deployen, verwende ich uwsgi, um es zu tun.Was ist der Unterschied von install uwsgi von yum oder pip?

Zuerst wird der Kolben Programm wird einige Code wie haben:

app,host,port = myFun() 

Dann habe ich eine wsgi Config-Datei mit dem Namen api.ini, den Inhalt wie unter (I elimited einige infor):

chdir = ../../bin/ 

wsgi-file = api_uwsgi 

Die api_uwsgi ist meine python-Datei-Erzeugungs App

Danach verwende ich Befehlszeile wie unten uwsgi

laufen
uwsgi --ini apid.ini 

Aber das Problem ist, wenn die uwsig von yum installiert ist. Das Protokoll ist wie folgt:

*** 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 *** 

Keine App geladen!

Verwenden Sie pip install uwsgi, es wird gut und die Version von uwsgi ist das gleiche. Warum?

Antwort

0

Der Unterschied besteht darin, dass, wenn man installiert von yum, apt oder was auch immer Paket-Manager verwendet man, die uwsgi Paket der Verteilung ist fully modular, so wird es nicht Plugins für Python zu installieren. Aber von pip aus installiert, macht es das für Python, da es schließlich der Paketmanager von Python ist!

Wenn Sie von yum (yum install uwsgi) installieren, um es zu umgehen, müssen Sie auch die Python-Plugin installieren:

yum install uwsgi-plugin-python

und dann in Ihrem uwsgi Befehl, Sie --plugin=python passieren sollte

Verwandte Themen