📝 Что такое и как работает Event Store?
Показываю, как работает Event Store — важное понятие для паттерна Event Sourcing, про которое вас точно спросят на бэкенд-собеседовании. Event Store — это специальное хранилище, которое сохраняет не текущее состояние объекта, а всю последовательность событий, которые привели к этому состоянию. В отличие от обычной базы данных, где мы обновляем одну запись, в Event Store каждое новое событие просто добавляется в конец ленты. У каждого события есть идентификатор агрегата, тип события, данные и версия (порядковый номер). Благодаря этому можно перестроить состояние агрегата на любой момент времени, воспроизведя все события по порядку. Примеры Event Store: EventStoreDB, Apache Kafka в роли event log, или даже обычная реляционная база с таблицей events, где каждое событие — отдельная строка. Главные плюсы: полный аудит, возможность отката, воспроизведение событий для аналитики. Минусы: сложность с обновлением старых событий и потенциально большой объём данных. #eventstore #backend #backendinterview #designpatterns #codinginterview #techinterview #softwarearchitecture #eventsourcing
Показываю, как работает Event Store — важное понятие для паттерна Event Sourcing, про которое вас точно спросят на бэкенд-собеседовании. Event Store — это специальное хранилище, которое сохраняет не текущее состояние объекта, а всю последовательность событий, которые привели к этому состоянию. В отличие от обычной базы данных, где мы обновляем одну запись, в Event Store каждое новое событие просто добавляется в конец ленты. У каждого события есть идентификатор агрегата, тип события, данные и версия (порядковый номер). Благодаря этому можно перестроить состояние агрегата на любой момент времени, воспроизведя все события по порядку. Примеры Event Store: EventStoreDB, Apache Kafka в роли event log, или даже обычная реляционная база с таблицей events, где каждое событие — отдельная строка. Главные плюсы: полный аудит, возможность отката, воспроизведение событий для аналитики. Минусы: сложность с обновлением старых событий и потенциально большой объём данных. #eventstore #backend #backendinterview #designpatterns #codinginterview #techinterview #softwarearchitecture #eventsourcing




