Стоп Эрланг Демон - PullRequest
       16

Стоп Эрланг Демон

5 голосов
/ 25 января 2010

Помимо выполнения $ killall -9 beam.smp, как я могу программно уничтожить узел Эрланга, когда я знаю его -sname?

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

Есть ли достойное руководство по развертыванию Erlang в качестве демона?

1 Ответ

10 голосов
/ 25 января 2010

kill и killall с -9 - это почти всегда неправильно .

Вы можете довольно легко попросить удаленный узел выйти, используя:

rpc:call(RemoteNode, init, stop, []).

Я не знаю, помешает ли это heart перезапустить его, но я бы посоветовал, чтобы, если вы ожидаете его остановить, не запускайте его в режиме «никогда не останавливаться».

Обновление - Зед отмечает, что init:stop правильно делает с heart, поэтому вышеприведенный rpc:call - лучший и единственный способ сделать это.

...