Saya memiliki aplikasi Django yang menjalankan skrip bash. Saya memerlukan server nginx untuk me-restart jadi saya menjalankan /etc/init.d/nginx reload
yang berfungsi dengan baik. Saya telah menggunakan restart uwsgi
untuk uwsgi tetapi saya perlu melakukan reload yang anggun daripada restart server keras.
Bagaimana saya bisa melakukan ini?
Saat ini saya menjalankan reload uwsgi
fungsi bash subprocess.popen
. Tampaknya hanya memuat ulang proses yang memanggil subproses tidak semua situs di-host oleh instance uwsgi. importing uwsgi
dan berlari uwsgi.reload
tampaknya juga hanya mempengaruhi proses panggilan. Apakah ada saklar untuk uwsgi melalui python atau bash yang memungkinkan memulai kembali semua proses uwsgi
PENJUALAN
Anda dapat me-restart uWSGI dengan mengirimkan sinyal SIGHUP ke proses uWSGI Anda seperti:
Jika Anda ingin mengotomatiskan ini dalam skrip bash, Anda dapat meminta uWSGI menghapus id prosesnya dengan menyediakan
pidfile
opsi, misalnya seperti:Kemudian Anda dapat memuat ulang proses dengan:
sentuh-ulang
Anda juga dapat memulai uWSGI dengan
touch-reload
argumen, yang menentukan file yang ketika disentuh membuat uWSGI memuat ulang:Kemudian uWSGI akan memuat ulang saat Anda menyentuh file:
Ingatlah bahwa Anda hanya dapat memuat ulang uWSGI saat dijalankan dengan mode proses master, tetapi biasanya demikian.
Informasi lebih lanjut: http://uwsgi-docs.readthedocs.io/en/latest/Management.html#reloading-the-server
sumber