Size: a a a

Эликсир и Вунш

2020 January 03

AN

Alexey Nikitin in Эликсир и Вунш
источник

D

DooDLeZz* in Эликсир и Вунш
Alexey Nikitin
единственное, что приходит на ум, это то что пацанам не нравится :simple_one_for_one потому что он сильно по-другому себя ведет
Есть какие-то затыки, которые стоит учесть?
источник

AN

Alexey Nikitin in Эликсир и Вунш
в чем затыки? в simple_one_for_one?
источник

D

DooDLeZz* in Эликсир и Вунш
Alexey Nikitin
в чем затыки? в simple_one_for_one?
Незнаю, поэтому и интересуюсь, есть ли?
источник

МБ

Максим Барулин in Эликсир и Вунш
Стратегия :simple_one_for_one была сделана для тех случаев, когда количество воркеров не определено и надо динамически их создавать, при этом, надо чтобы оно было просто в реализации. Пулы какие-нибудь, например. В остальных случаях я бы рекомендовал рассмотреть gen stage вместе с flow
источник

ŹR

Źmićer Rubinštejn in Эликсир и Вунш
DynamicSupervisor сделан вместо simple_one_for_one потому, что simple_one_for_one это несусветная хрень, пытающаяся использовать api супервизора абсолютно другим способом чем все остальные стратегии
источник

ŹR

Źmićer Rubinštejn in Эликсир и Вунш
Чтобы понять почему это хрень, представьте себе chrontab, в котором вместо известного вам синтакса используется HTML. Причём теги берутся от балды. Типа “то что в li - это значит минуты, а то что в head - это часы. Года зададим тегом b”
источник

v

vtm in Эликсир и Вунш
Źmićer Rubinštejn
Чтобы понять почему это хрень, представьте себе chrontab, в котором вместо известного вам синтакса используется HTML. Причём теги берутся от балды. Типа “то что в li - это значит минуты, а то что в head - это часы. Года зададим тегом b”
А можно как-то по другому понять, почему это хрень?
источник

D

DooDLeZz* in Эликсир и Вунш
Короче, суть такова, что у меня все дочерние процессы однотипны (по сути это один и тот же модуль, только запускается с разными параметрами)
источник

D

DooDLeZz* in Эликсир и Вунш
И каждый процесс имеет «имя» (регистрируется через gproc)
источник

D

DooDLeZz* in Эликсир и Вунш
При динамическом супервайзере - все отрабатывает корректно
источник

D

DooDLeZz* in Эликсир и Вунш
Если пытаться запустить как обычный супервайзер - ругается на то, что такой процесс уже запущен
источник

v

vtm in Эликсир и Вунш
DooDLeZz*
Если пытаться запустить как обычный супервайзер - ругается на то, что такой процесс уже запущен
Покажи код с обычным супервизором
источник

D

DooDLeZz* in Эликсир и Вунш
Позже 🙂 я его стер и ушел дальше, надо в недрах репо лазить
источник

МБ

Максим Барулин in Эликсир и Вунш
Я такой ерундой занимался в самом начале изучения erlang именовал процессы зачем-то, потом по именам сообщения рассылал... Потом взял gproc ему ж пофиг на имена, пид и атрибуты.
А по проблеме вангую, что при запуске динамиком указывается имя модуля для запуска. А при попытке запуска обычным имя модуля указывается как имя процесса, в этом случае он нафиг пошлёт после первого процесса, всё верно.
источник
2020 January 04

IK

Ihor Katkov in Эликсир и Вунш
DooDLeZz*
Если пытаться запустить как обычный супервайзер - ругается на то, что такой процесс уже запущен
Тебе нужно type передать в спецификации
источник

IK

Ihor Katkov in Эликсир и Вунш
child_spec = %{

     id: Supervisor,

     start: {Supervisor, :start_link, [args]},

     restart: :permanent,

     type: :supervisor

   }
источник

D

DooDLeZz* in Эликсир и Вунш
Благодарю)
источник

D

DooDLeZz* in Эликсир и Вунш
Максим Барулин
Я такой ерундой занимался в самом начале изучения erlang именовал процессы зачем-то, потом по именам сообщения рассылал... Потом взял gproc ему ж пофиг на имена, пид и атрибуты.
А по проблеме вангую, что при запуске динамиком указывается имя модуля для запуска. А при попытке запуска обычным имя модуля указывается как имя процесса, в этом случае он нафиг пошлёт после первого процесса, всё верно.
А как ты получал имя процесса из самого процесса?
источник

D

DooDLeZz* in Эликсир и Вунш
Это вообще возможно? Теоретически, процесс может получить свой PID. Если мы знаем пид, можем ли мы из Registry выдернуть имя процесса?
источник