Я создаю веб-приложение, которое пользователи могут редактировать и делиться заметками. Пользователи должны быть подключены к заметкам с ролями (владелец, чтение, чтение и запись). Это иногда подключаемая система, поэтому я выбрал синхронизацию с использованием CQRS и источников событий. После презентации Грега Янга [36:20 - 38:40] процесс будет выглядеть следующим образом:
- Клиент вносит изменения в автономном режиме.
- Клиент подключаетсяв Интернет.
- «Хранить и пересылать» отправляет события, которые произошли, когда клиент был в автономном режиме.
- Клиент сравнивает локальные события с полученными событиями и выполняет слияние, решая, какие командыхранить. Затем обновляет модель локального представления.
- Клиент отправляет сохраненные команды (созданные в автономном режиме) на сервер.
- Сервер выполняет команды и генерирует события, которые хранятся в хранилище событий.
Вопрос: Как «Хранить и предисловие» решает, какие события должныотправлять каждому пользователю?
Очевидно, что отправка всех событий может поставить под угрозу безопасность других пользователей.