Названия стратегий перезапуска OTP кажутся странными. Зачем? - PullRequest
0 голосов
/ 01 мая 2018

Извините, это не техническая проблема.

Названия стратегий перезапуска OTP-супервизора мне кажутся странными, возможно, потому, что я не являюсь носителем английского языка.

Из моего понимания:

  • one_for_one: когда один ребенок умирает, он перезапускает этого ребенка
  • one_for_all: когда один ребенок умирает, он убивает всех остальных детей и перезапускает их в порядке
  • rest_for_one: когда один ребенок умирает, он убивает всех детей, загруженных после этого мертвого ребенка, и перезапускает их в порядке

А вот и мой вопрос:

Я пытаюсь понять названия этих стратегий, читая их как предложения, например, "перезагрузите one ребенка for one смерти ребенка".
Тогда или one_for_all, или rest_for_one кажется мне перевернутым именем. ("restart one child for all children's death" ??)

Почему эти стратегии были названы так?

c.f. Раздел erlang docs one_for_all имеет надпись "все-за-один". Это просто опечатка?

1 Ответ

0 голосов
/ 03 мая 2018

"Потому что, когда все это для одного, это один для всех." Брайан Адамс или три мушкетера

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

...