Size: a a a

Software Design/Architecture/Zen

2020 September 21

DE

Dmitry Eliseev in Software Design/Architecture/Zen
Pavel Schekin
а как состояния передавать для алгоритмов? я вот ни как это дело догнять не могу. если бизнес процес, на разных шагах нужно обращаться к состоянию , как без этого?
Состояние лежит в БД
источник

PS

Pavel Schekin in Software Design/Architecture/Zen
Dmitry Eliseev
Состояние лежит в БД
одна бд для всех микросервисов?
источник

DE

Dmitry Eliseev in Software Design/Architecture/Zen
Pavel Schekin
одна бд для всех микросервисов?
Нет
источник

PS

Pavel Schekin in Software Design/Architecture/Zen
у меня для каждого своя. смущало поначалу дублирование информации частичное...
источник

˸A

˸̧̨ ͅBlack Akula˸̧̨ ... in Software Design/Architecture/Zen
Dmitry Eliseev
Состояние лежит в БД
Может быть (S3) бакет или даже кеш - не важно. Состояние = persist где-то... И желательно не в оперативной памяти))
источник

NF

Nikita Fedorov in Software Design/Architecture/Zen
Pavel Schekin
Вопрос вот такой. Есть kafka, nats, все как бы для микросервисов, обчитался и перепробовал. Но вот не догоняю все равно одну тему. Ну отправил я сообщение на шину, ну получил его кто то ... и... не справился, не отработал и получается все. Тот же sidekiq для рельсы, bull для ноды поверх redis будет пытаться дожать задачу, повторы и все такое. Нужно поверх kafka or nats писать проверку успешности и повторы делать?
не эксперт, но вроде для таких штук как sidekiq из коробки нет всего вот этого: проверка успешности, повторы, подтверждения и мертвый вокрер = не обработка джобы. А все эти ребиты кавки и подобное дают гарантии того что джобы возобновятся + подтверждение
источник

PS

Pavel Schekin in Software Design/Architecture/Zen
Nikita Fedorov
не эксперт, но вроде для таких штук как sidekiq из коробки нет всего вот этого: проверка успешности, повторы, подтверждения и мертвый вокрер = не обработка джобы. А все эти ребиты кавки и подобное дают гарантии того что джобы возобновятся + подтверждение
блин, но по факту sidekiq, как раз нет воркера то он дожется и даст ему задачу. или если таска не выполнена, повторит. а все остальное какая то маркетинговая шляпа пока. NATS- нет воркета, ну и хорошо не выполним. KAFKA - нет воркера, подождем , появился не справился, ошибка  -> пофиг, сообщение то получил и все , повторов не будет.
источник

AC

Artur Chobanyan in Software Design/Architecture/Zen
Pavel Schekin
Вопрос вот такой. Есть kafka, nats, все как бы для микросервисов, обчитался и перепробовал. Но вот не догоняю все равно одну тему. Ну отправил я сообщение на шину, ну получил его кто то ... и... не справился, не отработал и получается все. Тот же sidekiq для рельсы, bull для ноды поверх redis будет пытаться дожать задачу, повторы и все такое. Нужно поверх kafka or nats писать проверку успешности и повторы делать?
А какая связь между брокером аля кафка и логикой вашего приложения?
источник

PS

Pavel Schekin in Software Design/Architecture/Zen
получаю сообщения, извлекаю и преобразовываю данные, пересылаю между микросервисами
источник

PS

Pavel Schekin in Software Design/Architecture/Zen
Artur Chobanyan
А какая связь между брокером аля кафка и логикой вашего приложения?
вообще ресльса монолитная в проде тормозит. вот nestjs+kafka_or_nats_or_bull(aka sidekiq for nodejs) появились
источник

SP

Sergey Protko in Software Design/Architecture/Zen
Это транспорт, логику обработки ретраев всякие бэкофы и error queue самому делать или искать готовую инфраструктуру. Задача брокера - доставка и роутинг
источник

PS

Pavel Schekin in Software Design/Architecture/Zen
Sergey Protko
Это транспорт, логику обработки ретраев всякие бэкофы и error queue самому делать или искать готовую инфраструктуру. Задача брокера - доставка и роутинг
Понял, спасибо.
источник

AC

Artur Chobanyan in Software Design/Architecture/Zen
@schekin посмотрел на sidekiq, это же шедулер, вот что то похожее на ларе https://laravel.com/docs/8.x/scheduling
источник

PS

Pavel Schekin in Software Design/Architecture/Zen
Artur Chobanyan
@schekin посмотрел на sidekiq, это же шедулер, вот что то похожее на ларе https://laravel.com/docs/8.x/scheduling
в моем случае sidekiq (rails) будет заменен в связи с изменение стэка на bull (для nodejs)
источник

АЯ

Андрей Ява in Software Design/Architecture/Zen
Евгений Ромашкан
Та я в курсе что у них там cpu-bound задачи на пхп есть
Интересно почему не выбирают другие языки, у них же там даже разрабы с экспертизой в разных языках присутствуют)
Надо будет поспрашивать
Разрабы с чем?
источник

ЕР

Евгений Ромашкан... in Software Design/Architecture/Zen
Андрей Ява
Разрабы с чем?
Разрабы знающие другие языки*
источник

АЯ

Андрей Ява in Software Design/Architecture/Zen
Чем тебе слово "опыт" то не нравится?
источник

VS

Vladimir Smirnov in Software Design/Architecture/Zen
Андрей Ява
Чем тебе слово "опыт" то не нравится?
Это вообще два разных понятия
источник

VS

Vladimir Smirnov in Software Design/Architecture/Zen
Экспертиза != опыт
источник

АЯ

Андрей Ява in Software Design/Architecture/Zen
Конечно не равно.
Экспертиза это процесс
источник