Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Intoduction into CQRS // Albert

Intoduction into CQRS // Albert

Albert Gazizov's Keynote

Droid Labs

May 11, 2014
Tweet

More Decks by Droid Labs

Other Decks in Programming

Transcript

  1. Содержание 1. Почему CQRS ? a) История возникновения современной архитектуры

    b) Проблемы CRUD c) CQRS как решение проблем 2. Архитектура CQRS приложений
  2. ActiveRecord model 1. Нарушению инкапсуляции бизнес объектов 2. Lazy loading

    -> N+1 query 3. Денормализация размывает Domain Model 4. Ухудшение читаемости кода 5. Трудности поддержки 6. Проблема масштабируемости
  3. Queries Многослойная архитектура Запрос к DB Конвертирование Запроса к DB

    в доменную модель Конвертирование в DTO Передача клиенту CQRS Запрос к DB Конвертирование Запроса к DB в доменную модель Конвертирование в DTO Передача клиенту
  4. Commands Команда – представляет собой отражение бизнес действия, действия в

    котором заинтересован пользователь приложения. Преимущество использования команд: 1. Ориентация на бизнес проблемы пользователя. 2. Удобный механизм мониторинга и масштабирования
  5. 1. Сложная предметная область 2. Domain Driven Design 2. Task

    UI 3. Нужна масшабируемость Когда использовать?