[uwsgi] master = true chdir = /opt/eva-app gevent-monkey-patch = true wsgi-file = /opt/eva-app/wsgi.py callable = APP http-websockets = true enable-threads = true die-on-therm = true vacuum = true # Пытаемся рестартануться если проблемы с кодом. Иногда всплывают кросс-импорты, которые лечатся рестартом # Если будет бесконечный релоад + флуд на диск - ЭТО ХОРОШО need-app = true # Celery run as separate systemd service eva-celery # smart-attach-daemon = /tmp/celery.pid /root/.local/bin/celery -A cmf.manage.celery worker --pool gevent --loglevel=info --pidfile=/tmp/celery.pid # use journalctl -fu eva-app # logto = /var/log/uwsgi/%n.log buffer-size = 32768 logto = /var/log/eva-app-uwsgi.log # Проблема массовых websocket-подключений при рестарте сервиса. Делаем буффер, чтобы uwsgi быстро не отстрелливал их # ошибкой 500, а ставил в очередь ожидания. Без очереди - uwsgi долго не может обработать все подключения. # Пример ошибки: # u_offload_transfer_prepare()/connect(): Resource temporarily unavailable [core/offload.c line 113] # error routing request to uwsgi server /tmp/soketio-eva-app.sock listen = 1000