#arch #cqs #cqrs #note
Command Query Responsibility Segregation (CQRS)
❓ Что такое CQS (Разделение команд и запросов / Command-Query separation)
Первым упоминанием CQS считается книга B. Meyer Object Oriented Software Construction. Основная идея CQS заключается в том, что в объекте методы могут быть двух типов:
1️⃣ Команды (Commands) - методы, которые изменяют состояние объекта, не возвращая значение;
2️⃣ Запросы (Queries) - методы, которые возвращают результат, не изменяя состояние объекта.
❓ Что такое CQRS (Разделение ответственности на Команды и Запросы / Command Query Responsibility Segregation)
CQRS означает разделение ответственности за команду и запрос - это шаблон, который разделяет операции чтения и обновления для хранилища данных. Внедрив в приложение CQRS, можно максимально увеличить его производительность, масштабируемость и защиту.
Преимущества CQRS включают:
1️⃣ Независимое масштабирование. CQRS позволяет раздельно масштабировать рабочие нагрузки чтения и записи, снижая риск конфликтов блокировки.
2️⃣ Оптимизация схем данных. Для процессов чтения можно применить схему, оптимизированную для запросов, а для процессов записи — другую схему, оптимизированную для обновлений.
3️⃣ Четкое разделение зон ответственности. Разделение процессов чтения и записи позволяет получить более гибкие и простые в обслуживании модули. Бо́льшая часть сложной бизнес-логики переместится в модель записи. Это в некоторой степени упростит модель чтения.
4️⃣ Более простые запросы. Сохраняя в базе данных для чтения материализованное представление данных, вы предотвратите использование приложением сложных соединений в запросах.
https://cqrs.nu
Command Query Responsibility Segregation (CQRS)
Первым упоминанием CQS считается книга B. Meyer Object Oriented Software Construction. Основная идея CQS заключается в том, что в объекте методы могут быть двух типов:
CQRS означает разделение ответственности за команду и запрос - это шаблон, который разделяет операции чтения и обновления для хранилища данных. Внедрив в приложение CQRS, можно максимально увеличить его производительность, масштабируемость и защиту.
Преимущества CQRS включают:
https://cqrs.nu
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍4