Size: a a a

2021 March 18

ПГ

Павел Г. in symfony
А если говорить о доменне, то после ошибки - изменения не сохранятся, но ивент был - это как?
источник

AK

Anton K. in symfony
так ивент был как раз говорящий о том, что мы планируем сделать
источник

КГ

Константин Грачев... in symfony
Anton K.
я не думаю, что эвенты это про то, что у нас что-то произошло. но и про то, что что-то планирует происходить. кароч эвенты ваще с этим не связаны

https://github.com/symfony-cmf/Routing/blob/master/src/Event/Events.php

вот, тоже как пример
А где связь с доменными ивентами то?
источник

AK

Anton K. in symfony
у меня в системе есть события will и was, например
app.domain.order.delivery_date.will_change
в этом эвенте я пересчитаю какие-то агрегации, если надо, чтобы они вошли в транзакцию
и
app.domain.order.delivery_date.was_changed
тут я уже отправлю в бас нотификации, это уже после флаша
источник

SZ

Sergey Zolotov in symfony
источник

ПГ

Павел Г. in symfony
Земля пухом
источник

AK

Anton K. in symfony
fosub многому нас научил
источник

AK

Anton K. in symfony
хотя возможно это я не так понимаю domain events. Возможно Костантин прав
источник

ПГ

Павел Г. in symfony
Anton K.
хотя возможно это я не так понимаю domain events. Возможно Костантин прав
Возможно я буду не прав, но похорошему ивенты должны только ID слать. куда и что у вас шлется на перерасчёт, до того как сохранилось в бд - вопрос
источник

КГ

Константин Грачев... in symfony
Anton K.
хотя возможно это я не так понимаю domain events. Возможно Костантин прав
Всё что симфа/доктрина кидают в диспетчер это по сути не ивенты, это хуки. Точки расширений фреймворка для своих велосипедов.
Domain Events к этим хукам отношения не имеет, не смотря на то что это тоже вроде называется Events
источник

AK

Anton K. in symfony
источник

AK

Anton K. in symfony
Одна транзакция между агрегатами и итоговая согласованность между агрегатами
источник

AK

Anton K. in symfony
кстати вот тут большой абзац про наш спор. действительно, есть оба таких подхода. кто-то за один подход, кто-то за другой
источник

AK

Anton K. in symfony
я за гибридку. какие-то поля можно сразу пересчитать и в рамках одной транзакции изменения эти пойдут в бд
какие-то поля пойдут асинхронно
источник

КГ

Константин Грачев... in symfony
Anton K.
я за гибридку. какие-то поля можно сразу пересчитать и в рамках одной транзакции изменения эти пойдут в бд
какие-то поля пойдут асинхронно
Если тебе что-то важно сделать в одной транзакции, возможно ты зря это пытаешься делать через ивенты
источник

AK

Anton K. in symfony
нет, не зря. это совершенно нормально
источник

КГ

Константин Грачев... in symfony
Anton K.
нет, не зря. это совершенно нормально
Разработчики битрикса и всяких вордпрессов наверное тоже такие заявления часто делают )
источник

КГ

Константин Грачев... in symfony
работает же, значит нормально)
источник

ЕР

Евгений Ромашкан... in symfony
Константин Грачев
Если тебе что-то важно сделать в одной транзакции, возможно ты зря это пытаешься делать через ивенты
Почему?
источник

КГ

Константин Грачев... in symfony
По 10 разу пойдём про то, что ивент это информация о том что уже что-то свершилось?
Если ты себе не можешь позволить закоммитить транзакцию без ряда обязательных манипуляций за каким хером ты это через ивенты решать пытаешься?
источник