Помимо выполнения $ killall -9 beam.smp
, как я могу уничтожить узел Erlang программно, когда я знаю -sname
?
Если я не захочу, чтобы монитор heartbeat перезапустил процесс, как я могу удостовериться, что независимо от того, что ответ дан для вышеупомянутого вопроса, то также уничтожит heartbeat?
Существует ли достойное руководство по развертыванию Erlang как демон?
Убить
и killlall
с -9
- почти всегда неправильно .
Вы вполне можете легко спросить удаленный узел для выхода с использованием:
rpc:call(RemoteNode, init, stop, []).
Я не знаю, если это предотвратить сердце
от перезапуска его, но я бы предположил, что если вы ожидаете остановиться Это, вы не должны запустить его в режиме не-erver-Stop.
Обновление - ZED указывает на то, что init: Stop
делает правильную вещь с сердцем
, так что вышеупомянутое RPC: Call
является лучшим и единственный способ сделать это.