CQRS (Command Query Responsibility Segregation) es un patrón arquitectónico que separa las operaciones de lectura y escritura en una aplicación, usando modelos de dominio separados y posiblemente bases de datos separadas. Esto permite mejor escalabilidad y rendimiento al poder optimizar de forma independiente las consultas y comandos. CQRS sigue el principio SOLID de responsabilidad única aplicado a nivel de arquitectura.