Легко Настраиваемый Демон Python

В какой-то момент мне нужно было демонизировать некоторые действия Python. В Интернете была куча примеров подобной деятельности разной степени концентрации.

Так как в дальнейшем планировалось использовать код демонизации в дальнейшей деятельности, я решил разделить настройки и сам демон на разные части.

В результате получилось три файла:

  • Родительские классы - с небольшой модификацией классы взяты из интернет-статей.

  • Классы конфигурации — реакция на сигналы, реакция на команды и набор статических настроек для запуска.

  • Скрипт запуска — собирает первые два в сам демон
Далее я попытаюсь описать логику всех трёх.

сразу скажу, что все включено Гитхаб .

Потому что если вы легко читаете Python, то чтение моего весьма неумелого текста может оказаться гораздо сложнее.

Собственно, в первом файле описывать толком нечего: Это почти неизмененные три класса, взятые из Эта статья .

Единственные там изменения заключаются в том, что к самому демону привязали класс-обработчик сигналов, а добавление сигналов в список обрабатываемых прикрутили к самой процедуре демонизации.

Вторая часть будет немного интереснее.

Там три класса: 1) SigFunctionsCon — содержит реакции на сигналы.

При инициализации он получает экземпляр демона, чтобы иметь возможность доступа к его методам.

Каждый метод должен соответствовать сигналу, который он обрабатывает, по имени.

Например вот так:

  def SIGTERM(self):

 
Теги: #python #daemon #linux #python
Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2024-10-25 10:34:02
Баллов опыта: 499
Всего постов на сайте: 3
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.