Подумываю перейти с Node.js на другой язык программирования (Эликсир). А в Node я использовал PM2 в качестве диспетчера процессов. Дело в том, что я не хочу использовать PM2 для управления процессами, поскольку мне понадобится Node в качестве зависимости, а PM2 больше подходит для процессов приложений Node.js (хотя я знаю, что с ним можно запускать приложения, не связанные с Node. ).
Итак, мой вопрос: что я могу использовать в качестве замены PM2 для приложений, отличных от Node.js?
Функции, которые мне нужны от этого инструмента:
Практически любую службу, включая те, которые вы использовали для запуска с pm2, можно запустить из модуля systemd. И это в любом случае лучше интегрировать в дистрибутив Linux. Большинство фреймворков языков / веб-приложений предоставляют образец модуля systemd, который вы можете использовать.
Например, если вы программируете на Elixir, вы, вероятно, используете Phoenix Framework, для которого вы можете найти образцы модулей systemd и помощь на форуме Эликсира.
Любой другой менеджер процессов будет поставляться со своим собственным набором поддерживающих / базовых языков и фреймворков, например. Python или что-то в этом роде, так что разницы нет.
Если вы уже знаете PM2 и знаете, как поддерживать Node, используйте PM2 так, как это описано в документации для использования с приложениями, отличными от Node: https://pm2.keymetrics.io/docs/usage/process-management/#start-any-process-type