Size: a a a

2020 September 24

k

knopkod4v in symfony
Dmitry
возможно, а приведите пример когда не нужно шарить стейт
ну хотя бы на основе мифической картинки, из примера в сообщении выше
тебе надо курс уди посмотреть, он там несколько примеров накидывает
источник

D

Dmitry in symfony
Sergey Protko
да, isProcessed и прочие "статусы" это может быть сигнальчик что что-то пошло не так с проектированием. Скорее всего должен быть ивент ImageWasProcessed на которое ты подписан и сможешь сам уже принимать решение.

Повторюсь - не надо пытаться натягивать CQRS и ES на старые добрые подходы с request/response моделью (процедуры)
ну вот допустим вы подписались на событие, один раз отпроцессили
второй раз тоже будете процессить если картинка прилетела та же самая ?
источник

SP

Sergey Protko in symfony
самая большая как по мне сложность которую надо осознать - это переход от работы со стэйтом в какой-то точке времени к стримам сообщений которые во времени разнесены.
источник

SP

Sergey Protko in symfony
Dmitry
ну вот допустим вы подписались на событие, один раз отпроцессили
второй раз тоже будете процессить если картинка прилетела та же самая ?
не оч понимаю о чем речь.
источник

k

knopkod4v in symfony
Sergey Protko
не оч понимаю о чем речь.
ну тип сеть лаганула, ретрай, а на самом деле картинка запроцессилась. Я так понял 🤔
источник

SP

Sergey Protko in symfony
Sergey Protko
самая большая как по мне сложность которую надо осознать - это переход от работы со стэйтом в какой-то точке времени к стримам сообщений которые во времени разнесены.
мне оч нравится аналогия с time-space диаграммами. Мол вот у тебя классическая модель которая описывает состояние системы в конкретный момент времени, а вот вжух и мы переносим эту модель в плоскость где время тоже координата и можно систему расписать уже без учета "настоящего момента"

на тему "по другому".
источник

D

Dmitry in symfony
knopkod4v
ну тип сеть лаганула, ретрай, а на самом деле картинка запроцессилась. Я так понял 🤔
ну можно понять и так, мало ли что случилось, может кто-то в результате бага влупил одну и ту же картинку в очередь
и мы будем процессить все даже если они уже отпроцессины ?
источник

AP

Alex Papilov in symfony
Sergey Protko
читай про коллекции и Criteria.
спасибо
источник

SP

Sergey Protko in symfony
Dmitry
ну можно понять и так, мало ли что случилось, может кто-то в результате бага влупил одну и ту же картинку в очередь
и мы будем процессить все даже если они уже отпроцессины ?
да? у тебя ж этом случае статус тоже не поменяется)
источник

k

knopkod4v in symfony
Dmitry
ну можно понять и так, мало ли что случилось, может кто-то в результате бага влупил одну и ту же картинку в очередь
и мы будем процессить все даже если они уже отпроцессины ?
если это баг - тут ничего не поделать. Так можно и бесконечный цикл случайно написать - тоже будет бесконечно процесситься
источник

D

Dmitry in symfony
Sergey Protko
да? у тебя ж этом случае статус тоже не поменяется)
статус картинки ? почему не поменяется?
один раз отпроцессили, а она еще раз прилетела
источник

SP

Sergey Protko in symfony
тут вопрос - почему случился баг. Врядли причина бага в том что кто-то забыл статус проверить. Скорее всего проблема в другом месте и надо ее решать а не пытаться кастылять проверки стэйта и плодить ненужную связанность в коде
источник

D

Dmitry in symfony
что будет делать ваша система в таком случае ?
источник

SP

Sergey Protko in symfony
Dmitry
что будет делать ваша система в таком случае ?
в моем случае у меня не будет таких багов)
источник

k

knopkod4v in symfony
Dmitry
статус картинки ? почему не поменяется?
один раз отпроцессили, а она еще раз прилетела
по идее хорошо делать идемпотентные операции. Типа проверить, что картинка уже запроцессилась и отдать "да-да, ок, всё сделал как ты сказал", а на самом деле ничего не делать
источник

D

Dmitry in symfony
но на вопрос вы так и не ответили, система будет процессить такое или сохранит ресурсы ?
источник

SP

Sergey Protko in symfony
начнем с того что задача вообще не понятна. Я вот не могу понять по какой причине мне сообщение должно бесконечно приходить
источник

D

Dmitry in symfony
knopkod4v
по идее хорошо делать идемпотентные операции. Типа проверить, что картинка уже запроцессилась и отдать "да-да, ок, всё сделал как ты сказал", а на самом деле ничего не делать
а как проверить что картинка уже отпроцессена если стейт шарить нельзя ?:)
источник

D

Dmitry in symfony
Sergey Protko
начнем с того что задача вообще не понятна. Я вот не могу понять по какой причине мне сообщение должно бесконечно приходить
ошибка сети, назад не выслали ack для кролика - вполне реальный кейс
источник

SP

Sergey Protko in symfony
Dmitry
а как проверить что картинка уже отпроцессена если стейт шарить нельзя ?:)
проблема в желании что-то проверять. Это тип говорит о том что ты понятия не имеешь как у тебя данные по системе ходят
источник