django 學(xué)習(xí)之路(四)uwsgi 運行之后產(chǎn)生多個進(jìn)程

問題描述

  • 當(dāng)根據(jù)第二課時的內(nèi)容去試項目的時候,發(fā)現(xiàn)uwsgi打開時不起作用了,網(wǎng)站也打不開了,

  • gg,然后去看端口,端口也是ok的,然后ps -ef 了一下,發(fā)現(xiàn)有好多個<font color=#FF0000>uwsgi --ini </font> ,真的好多個,傻傻的kill了半天,之前以為uwsgi運行完就結(jié)束了,,沒想到它并不會結(jié)束,而是一直存在。知道了原因,這次出現(xiàn)問題就迎刃而解了。

其實原因如下:

  • 可以通過uwsgi --ini /etc/uwsgi.ini,來產(chǎn)生一個主進(jìn)程uwsgi.ini進(jìn)程,進(jìn)程號會出現(xiàn)在uwsgi.ini中配置的pid文件中。

  • 由于每次關(guān)閉shell時都沒有 uwsgi --stop 但是每次開啟shell時都有進(jìn)行--ini /etc/uwsgi.ini 導(dǎo)致產(chǎn)生多個uwsgi進(jìn)程

  • 并且另一個原因,請看配置:

uwsgi 的配置:

[uwsgi]
socket= :8000  #內(nèi)網(wǎng)也是可以的
chdir=/home/ljh/project/Hello
wsgi-file=Hello/wsgi.py
processes=4 #為我們的項目開啟了4個可以并發(fā)的進(jìn)程,可以很快的響應(yīng),但是比較耗內(nèi)存
threads=2 #為每個進(jìn)程開啟了兩個線程
master=True
pidfile=/usr/local/uwsgi/uwsgi.pid
daemonize=/usr/local/uwsgi/uwsgi.log

從上面的配置內(nèi)容看到,相當(dāng)于一次開了8個線程,這樣的話,相當(dāng)于uwsgi --ini /etc/uwsgi.ini 執(zhí)行一次就產(chǎn)生4個進(jìn)程,8個線程(但是事實好像不止8個,后面再詳細(xì)看原因)

解決方法

step1. 降低配置

其實高配置真的對于這種自己玩的小服務(wù)器是不太合適的,首先我決定配置改低一點:

[uwsgi]
socket= :8000  #內(nèi)網(wǎng)172.21.*.*:8000也是可以的 (*是被我隱藏了,這里填自己的內(nèi)網(wǎng)就行)
chdir=/home/ljh/project/Hello
wsgi-file=Hello/wsgi.py
processes=2 #為我們的項目開啟了2個可以并發(fā)的進(jìn)程,可以很快的響應(yīng),但是比較耗內(nèi)存
threads=2 #為每個進(jìn)程開啟了兩個線程
master=True
pidfile=/usr/local/uwsgi/uwsgi.pid
daemonize=/usr/local/uwsgi/uwsgi.log

step1. 改進(jìn)開啟方式

每次打開uwsgi之后可能會忘了關(guān),那么每次開啟一個shell時,可以直接先運行下面的命令:

uwsgi --reload $uwpid 
#$uwpid是我把uwsgi的pid文件路徑加進(jìn)了~/.bashrc之后的變量名,這樣方便后面用
#加入的方法是打開~/.bashrc然后再文件的后面追加一句export $uwpid="/usr/local/uwsgi/uwsgi.pid"
#然后 source ~/.bashrc就可以了

step2. uwsgi關(guān)閉和重啟

uwsgi --reload $uwpid #重啟
uwsgi --stop $uwpid #關(guān)閉,這樣就不用一個個kill了
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 願望:1願望4月業(yè)績200萬!2願望快速讓潛意識創(chuàng)造幸運人生!3願望有真愛發(fā)生在我身上!感恩:1感恩李寧來支持我業(yè)...
    謝奕鋒閱讀 76評論 0 0
  • 母親終于出院了,在醫(yī)院里20多天,這大概是她生命中的第二次住院。 咳嗽許久,母親一直執(zhí)拗著,不肯聽勸說,不肯去醫(yī)院...
    簡單的考拉閱讀 570評論 0 3
  • 活著的意義是什么?這是一個我們終究要回答的問題,卻也是我們一直回答不了的問題。 蔡崇達(dá)的《皮囊》故事不多,...
    似羽流年閱讀 1,111評論 0 4

友情鏈接更多精彩內(nèi)容