command query responsibility separation

(CQRS) – principen att instruktioner till data­baser ska skiljas från frågor till data­baser. – Som in­struktioner (commands) räknas ändringar av databasen, alltså förutom ändringar även tillägg och strykningar. Som frågor (queries) räknas instruktioner som ger ett svar, alltså uppgifter ur databasen, utan att databasens innehåll förändras. – Traditionellt har frågor och instruktioner hanterats av samma mekanismer i databashanteraren. (Ofta kallas både frågor och instruktioner för frågor.) CQRS innebär att man skiljer på frågor och instruktioner. För rena frågor kan man då använda enklare metoder. Det är till exempel inget problem att två användare ställer samma fråga på samma gång, men om två användare försöker ändra samma uppgift samtidigt blir det problem. Det krävs alltså krångligare metoder för att hantera instruktioner än för att hantera rena frågor.

[databaser] [ändrad 2 maj 2018]