Как делают я выбрал между выскочкой, runit, супервизором, daemontools, и и т.д. для перезапуска процесса, если он умирает?

У меня есть веб-прокси Nginx, gunicorn веб-сервер и веб-приложение Python/фляги. Процесс Gunicorn, по-видимому, умер, и я хочу повысить качество этого в будущем путем изучения утилиты, которая может контролировать и перезапустить процесс gunicorn в конечном счете, это отказывает снова.

Я нашел несколько, которые могут сделать задание:

  • выскочка
  • runit
  • супервизор
  • daemontools
  • намного больше

Существует ли всесторонняя статья, которая выдерживает сравнение и контрастирует, различные утилиты раньше контролировали и перезапускали процесс?

13
задан 6 October 2015 в 22:15
2 ответа

اگر distro شما از Upstart استفاده می کند ، با آن همراه باشید. این پشتیبانی بسیار اساسی برای راه اندازی مجدد شغل است ، اما شامل محدودیت هایی است که می تواند از حلقه راه اندازی مجدد جلوگیری کند ، همانطور که توسطEEAA ذکر شده است.

اگر سیستم عامل شما از برنامه اولیه دیگری استفاده می کند ، آن را تغییر ندهید. من واقعاً نمی توانم در مورد سایر ابزارهایی که ذکر کردید به شما کمک کنم ، زیرا من به طور کلی از اوبونتو در جایی که Upstart هنوز هم وجود دارد استفاده می کنم (از آخرین LTS) ، بنابراین من کاری کم با آنها دارم. اما ایجاد یک اسکریپت ساده که از cron هر دقیقه یک بار اجرا شود (یا بیشتر به طور مثال در یک حلقه) کار سختی نیست ، که می تواند PID را بررسی کند و در صورت خرابی دوباره راه اندازی شود.

2
ответ дан 2 December 2019 в 21:28
  • runit является преемником daemontools (оба написаны в c )

  • supervisord использует python .

Я использовал runit с socklog того же автора внутри Alpine Linux lxc контейнеров примерно на 10 месяцев для управления web / базой данных и различными другими службами. Он легкий, простой в управлении, и у меня не было сбоев в обслуживании. Демон ведения журнала также работает как собственный пользователь, а не root , что хорошо.

voidlinux использует runit как систему init , а также для надзор за службой (поиск в дереве пакетов файлов запуска для примеров сценариев runit ).

3
ответ дан 2 December 2019 в 21:28

Теги

Похожие вопросы