CQRS za bardzo nie jest mi po drodze, ale mam pytanie na które nie wiem jaka jest poprawna odpowiedź.
Przykładowo mamy API wystawione do zapisu i API wystawione do odczytu. Front to jakoś sobie spina, OK.
Pytanie skąd API od zapisu wie:
- czy user jest zalogowany
- czy user ma uprawnienia związane z poszczególnym zasobem i operacją na nim?
W normalnym serwisie przed przyjęciem jakiejkolwiek mutacji byłoby sprawdzenie czy operacja jest dopuszczalna.
Stąd dochodzę do wniosku, że piszący musi ciągle znać bieżący stan.
Jak to robicie? Trzymacie cąłą bazę w RAM? W jakiej postaci, tworzycie sobie pod to kilka indeksów? Jak robicie na tym zapytania?
Czy może po prostu używacie np. postgresql jako master, a to API do odczytów obsługiwane jest ze slave'ów?