Size: a a a

2020 May 30

BB

Boris Beginin in pro.elixir
Но не могу понять
источник

BB

Boris Beginin in pro.elixir
какой вариант идеоматичен
источник

BB

Boris Beginin in pro.elixir
подиее с бродкаст диспачером
источник

ŹR

Źmićer Rubinštejn in pro.elixir
А зачем нужен тогда gen stage, если забиваешь на demand?
источник
2020 May 31

AD

Anastasiya Dyachenko in pro.elixir
Źmićer Rubinštejn
А зачем нужен тогда gen stage, если забиваешь на demand?
Например делаешь выборку из бд, шлешь это все в консьюмера, а он уже меньшими пачками обрабатывает
источник

AD

Anastasiya Dyachenko in pro.elixir
Но в таком варианте есть загвоздка - больше 10к отрезается
источник

AD

Anastasiya Dyachenko in pro.elixir
Поэтому вариант с деманд конечно лучше
источник

BB

Boris Beginin in pro.elixir
Źmićer Rubinštejn
А зачем нужен тогда gen stage, если забиваешь на demand?
вот в этом и был вопрос выше.

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

Задача получать обложки альбомов по названию трека, хочу сделать пайплайн из консьюмер_продьюсеров. как то так вижу:

ласт_фм -> spotify -> foo -> bar -> baz -> Redis

если я получаю обложку с ластфм все след стейджи просто забивают и пропускают эвент дальше,  но если я не получаю обложку с ластфм(например получаю по башке из за рейт лимита) то пытаюсь достать из спотифая и тд
источник

BB

Boris Beginin in pro.elixir
я нихуя не уверен что это нормальное решение
источник

BB

Boris Beginin in pro.elixir
и что генстейдж то что нужно, но мне кажется будет работать неплохо
источник

AD

Anastasiya Dyachenko in pro.elixir
Źmićer Rubinštejn
А зачем нужен тогда gen stage, если забиваешь на demand?
Ну и цепочка из коробки без необходимости писать свою, как-то так
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Genstage нужен для backpressure и распараллеливания - и только. Использование genstage как цепочка - это антипаттерн
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Boris Beginin
вот в этом и был вопрос выше.

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

Задача получать обложки альбомов по названию трека, хочу сделать пайплайн из консьюмер_продьюсеров. как то так вижу:

ласт_фм -> spotify -> foo -> bar -> baz -> Redis

если я получаю обложку с ластфм все след стейджи просто забивают и пропускают эвент дальше,  но если я не получаю обложку с ластфм(например получаю по башке из за рейт лимита) то пытаюсь достать из спотифая и тд
Это все делается синхронно в отдельном таске и все
источник

BB

Boris Beginin in pro.elixir
вотк корчое как я вижу всею хуйню в голове
                                                                 AnalyticsConsumer(диспатчит команду из эвента)-> CQRS
РедисПабсаб(ОН же продюсер) —>      ласт_фм -> spotify -> foo -> bar -> baz -> Redis
источник

AD

Anastasiya Dyachenko in pro.elixir
Окей, но имхо это сильно ограничивает область применения  genstage в принципе
источник

BB

Boris Beginin in pro.elixir
бля телега немного сбила
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Anastasiya Dyachenko
Окей, но имхо это сильно ограничивает область применения  genstage в принципе
А почему ты решила что его надо везде пихать?)) Вон в эрланге нету такого и 20 лет живут пацаны
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Он классно заходит, когда что-то можно выгребать откуда то по запросу - например из rabbit, кафки или файла там читать
источник

BB

Boris Beginin in pro.elixir
источник

AD

Anastasiya Dyachenko in pro.elixir
Да я не думаю так, просто есть ли реально такие задачи где нужен весь это функционал, который еще и если деманд не набрался, а продюсеру нечего больше слать, никогда не закончит обработку
источник