❓ Разделение чтения и записи: на уровне одной базы данных
Это самый простой и распространенный способ начать использовать CQRS. Он не требует сложной инфраструктуры.
Основная идея:
Используется одна и та же база данных, но для операций Чтения (Query) и Записи (Command) создаются отдельные модели.
Как работает:
1️⃣ Команды (Commands): используют одну схему объектов (ORM-модели, сущности) для изменения данных.
2️⃣ Запросы (Queries): используют другие, упрощенные модели (например, View Models), которые могут быть оптимизированы для конкретных запросов. Запросы могут обращаться к тем же таблицам, но избегают сложных связей, используя, например, SELECT только нужных полей.
➕Согласованность: Данные для чтения всегда актуальны.
➖Производительность: Нагрузка на чтение и запись ложится на один сервер БД.
P.S. Кто пропустил пост про CQRS, он тут.
Системный анализ | Дмитрий Помаскин
Post #199
656
- 🔥 5
- 👍 4
- 👏 2