uwsgi与皇帝/ systemd:宣布忠诚度最多需要3分钟

时间:2018-08-12 19:08:22

标签: django nginx ubuntu-16.04 system uwsgi

我的生产机器上有一些奇怪的行为。 我在Ubuntu 16.04上运行Python 2.7.12。 Nginx作为Web服务器(1.10.3)。我正在运行Django(1.11.15)应用程序。 UWSGI 2.0.17.1将处理对应用程序服务器的请求。

基本上,一切正常。直到我重新启动机器。重新启动后,大约需要3分钟,我才会看到消息“宣布我对皇帝的忠诚...”。

从系统重新启动到UWSGI准备就绪的那一刻,我的Nginx收到499/502和503错误。

我尝试了很多方法来解决此问题。我要做的一件事是不启动NGinx即可启动计算机。等待3分钟,启动NGinx,然后一切正常。因此,Emperor / Systemd似乎有问题。

我的皇帝文件:

.ToString()

我的uwsgi:

[Unit]
Description=uWSGI Emperor service
After=syslog.target

[Service]
ExecStart=/usr/local/bin/uwsgi --emperor /etc/uwsgi/vassals
ExecReload=/bin/kill -HUP $MAINPID
Restart=always
KillSignal=SIGQUIT
Type=notify
StandardError=syslog
NotifyAccess=all

[Install]
WantedBy=multi-user.target

重启后,系统日志输出:

# d4t wsgi ini file
[uwsgi]
# master
master           = false
# maximum number of processes
processes        = 5
# threads
enable-threads   = true
# socket to use
socket           = /tmp/uwsgi-omniit.sock
# permissions
chmod-socket     = 666
# base directory
chdir            = /var/www/omni-it/omniit/
# virtualenv
virtualenv       = /var/www/omni-it/
# module
module           = omniit.wsgi:application
# buffer size: the autocomplete is a bit large in the request
buffer-size      = 8190
# user and group
uid = www-data
gid = www-data

在此之后,我可以重新加载并重新启动皇帝而没有任何问题。不再发生错误。

任何帮助将不胜感激!

0 个答案:

没有答案