#cqrs — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #cqrs, aggregated by home.social.
-
Почему я перестал передавать Spring Pageable в контракты слоя приложения
Контракт use case должен описывать потребность приложения, а не API выбранного persistence фреймворка. Spring Data пагинация хорошо работает в CRUD приложениях. Для многих проектов Pageable в application service — это разумный компромисс. Проблема возникает, когда Pageable становится частью публичного контракта use case.
https://habr.com/ru/articles/1044352/
#Clean_Architecture #Pageable #pagination #Repository_Pattern #CQRS #Read_Model #JDBC #java
-
Eventual Consistency: как мы починили тормоза апрува и сломали бюджет
Мы убрали одну блокировку, чтобы апрувы перестали тормозить. Через несколько недель из-за этого клиент пробил квартальный бюджет – а наша система этого даже не заметила. B2B travel SaaS, конец 2016-го. Два руководителя финансового департамента одновременно открыли форму апрува, оба увидели один и тот же остаток, и каждый одобрил поездку, которая по отдельности в бюджет вписывалась. Вместе они пробили лимит. Узнали мы об этом из звонка клиента, не из алерта. Дальше – три вопроса про eventual consistency, которые стоит задать до архитектуры, а не на разборе инцидента.
https://habr.com/ru/articles/1042256/
#eventual_consistency #согласованность_данных #CQRS #оптимистичная_блокировка #EF_Core #проекции #saga #идемпотентность #распределённые_системы #read_model
-
I've been pondering about creating EventSourcing, CQRS & DDD scaffolding from scratch in TypeScript.
There doesn't seem to be an OpenSource basic scaffolding for this using RxJS? ( I mean the basic bang like NgRx ).
DDD -> NgRx
- Command -> Action ( in imperative )
- Command Handler -> Effect
- Domain Event -> Action ( in past tense )
- Aggregate state -> a Store entry
- Aggregate state's apply -> ReducerDid I get this right?
#RxJS #CQRS #EventSourcing #DDD #NgRx #TypeScript #OpenSource