Size: a a a

2021 April 23

AA

Adilet Abylov in pro.elixir
Он не обеспечивает последовательность же
источник

МБ

Максим Барулин... in pro.elixir
можно сделать по одному консьюиеру на очерердь
источник

AA

Adilet Abylov in pro.elixir
Тоже думаю
источник

МБ

Максим Барулин... in pro.elixir
где-то я видел пример как разруливать сообщения разных типов по конкретным консьюмерам
источник

ЯК

Ярослав Коробейников... in pro.elixir
через ProducerConsumer?
источник

IK

Ihor Katkov in pro.elixir
Вы видно вчера на митапе не были) Там как раз об этом @apelsinka223 говорила
источник

AA

Adilet Abylov in pro.elixir
😅
источник

AN

Alexey Novoselov in pro.elixir
GenStage - это чистый back pressure, если очередь спускают "сверху" то ген стейдж не нужен. И костыли, о которых вчера Настя рассказывала, только усложнят систему и вызовут кучу проблем под нагрузкой, которые вы устанете отлаживать
источник

NM

Natalia Maximenko in pro.elixir
Коллеги, поделитесь кто чем пользуется для успешного и быстрого разгребания очереди кролика? Broadway, другие библиотеки, самописные велосипеды? Условия примерно такие прилетели разом 1000 запросов, надо все отработать и отдать ответы в пределах двух минут. С прикидкой на то, что через год может быть 10К запросов
источник

VS

Vladimir Sekisov in pro.elixir
Самописный, открываю несколько соединений, в каждом несколько каналов, по сотне консьюмеров на каждом.
источник

AD

Anastasiya Dyachenko in pro.elixir
broadway самый простой способ. поднять достаточное количество consumer-ов чтобы они параллельно разгребали. 1000 запросов за 2 минуты должны уложиться
источник

AD

Anastasiya Dyachenko in pro.elixir
вообще такие объемы и срок не должны быть проблемой и скорость наверно тут не стоит рассматривать как главный приоритет
источник

AL

Anton Lapshin in pro.elixir
да, бродвей норм - будет вычитывать пачками. ну либо просто консьюмеров нарастить
источник

AL

Anton Lapshin in pro.elixir
вообще, если нужно именно быстро читать и параллелить, консьюмер должен исключительно вычиткой и передачей в обработчик сообщения заниматься. а вот обработчиков уже накинуть как можно больше. если прямо в консьюмере делать обработку, то, конечно, он будет медленно ворочаться
источник

AD

Andrew Dryga in pro.elixir
Возьмите просто библиотеку AMQP и создайте сами консумеров, не слушайте остальных. Browaday только замедлит положение, он сделает ровно то же, только еще и будет через себя данные гонять.

Чтобы посчитать кол-во консюмеров возьмите скорость обработки одного такого запроса и посчитайте что-то типа

consumers_count = (1000 * one_job_avg_execution_time_seconds) / (2 * 60)
источник

AD

Anastasiya Dyachenko in pro.elixir
зачем эта экономия на спичках? если бы реально нужна была скорость, то и очередь бы не использовали
источник

AD

Andrew Dryga in pro.elixir
Бывает что в очередь пишет какая-то ламда функция и она не контролируется
источник

AD

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

AB

Alex Bubnov in pro.elixir
а акать он их тоже будет пачками?
источник

AB

Alex Bubnov in pro.elixir
то есть, отдельный запрос можно nack-нуть, чтобы он в dlx отправился, или что там еще на стороне сервера настроено?
источник