Size: a a a

pro.rb (Ruby/Rails / RU)

2020 October 26

AI

Alex Ilizarov in pro.rb (Ruby/Rails / RU)
А что если у тебя обработчик улетит в циклический крэш?
источник

S

ShadoWalkeR in pro.rb (Ruby/Rails / RU)
Ты меня агитируешь сейчас все переписать на раббит?)
источник

AI

Alex Ilizarov in pro.rb (Ruby/Rails / RU)
Всю очередь сдует в dev/null или память забьется и редис сдохнет возможно утащив что то еще на редис посаженное?
источник

AI

Alex Ilizarov in pro.rb (Ruby/Rails / RU)
ShadoWalkeR
Ты меня агитируешь сейчас все переписать на раббит?)
Я удостоверяюсь что ты предусмотрел все нужные риски
источник

S

ShadoWalkeR in pro.rb (Ruby/Rails / RU)
Я знаю плюсы этого, но у меня сейчас хватает и без этого работы. А коллеги которые это использую и будут переписывать - сами уже решат что им нужно
источник

AI

Alex Ilizarov in pro.rb (Ruby/Rails / RU)
А, понятно, и так сойдет
источник

S

ShadoWalkeR in pro.rb (Ruby/Rails / RU)
Это временное решение - все это понимают
источник

AI

Alex Ilizarov in pro.rb (Ruby/Rails / RU)
ShadoWalkeR
Это временное решение - все это понимают
Сервисы только на таких и живут
источник

S

ShadoWalkeR in pro.rb (Ruby/Rails / RU)
Тут нет. Руби знаю только я в отделе, поэтому это лишний повод все что используется переписывать 😃
источник

S

ShadoWalkeR in pro.rb (Ruby/Rails / RU)
У меня были наработки по этому - я смог их быстро внедрить. Это нам наконец то позволило найти проблему, которая была головной болью последние пол года - почему все внезапно все становится плохо, а потом точно так же само проходит и еще пачку застарелых проблем
источник

S

ShadoWalkeR in pro.rb (Ruby/Rails / RU)
Так что да - с учетом всех рисков этот подход решил гораздо больше проблем, чем создал. Проблемы циклических рестартов обработчика никуда бы не делись и на старой схеме. никуда они не денутся и с раббитом. Проблема сообщений в очереди - да раббит позволит её избежать в теории. На практике - опыта нет ни у кого - не факт что это сходу окажется лучше решения на редисе.
Дроп всего в редисе при его падении - неприятно. Но с учетом того что примерно такое же происходит при падении обработчика с прямы хождением в интерфейс - ничего нового не будет. Только теперь это действительно аварийное событие а не рядовое явление как раньше
источник
2020 October 27

D

Dmitry in pro.rb (Ruby/Rails / RU)
@ShadoWalkeR31 вам же нужно было очередь последовательно разгребать?
источник

S

ShadoWalkeR in pro.rb (Ruby/Rails / RU)
Ага
источник

D

Dmitry in pro.rb (Ruby/Rails / RU)
или без разницы? главное очередь разгрести
источник

D

Dmitry in pro.rb (Ruby/Rails / RU)
обработка батчами подошла бы?
источник

D

Dmitry in pro.rb (Ruby/Rails / RU)
т.е. взять например 1000 элементов из очереди, и одним инсертом вставить в БД или обработать одним батчем
источник

S

ShadoWalkeR in pro.rb (Ruby/Rails / RU)
И если чтото пошло не так всю пачку протерять
источник

S

ShadoWalkeR in pro.rb (Ruby/Rails / RU)
Но вопрос же был не в этом
источник

D

Dmitry in pro.rb (Ruby/Rails / RU)
ну я как понял, нужно было куда-то лить реалтаймово данные и их обрабатывать. и чтобы было отказоустойчиво
источник

S

ShadoWalkeR in pro.rb (Ruby/Rails / RU)
Нет. Вопрос был как без явного объявления методов клиента редиса проксировать вызовы к нему обвязав это failoverом
источник