이벤트 소싱을 사용하는 CQRS는 시스템 중 하나의 아키텍처로 완벽하게 적합하다고 생각합니다. 현재 걱정하고있는 것은 하나뿐입니다. 많은 양의 이벤트 처리 및 결과적으로 거대한 이벤트 스토어.이벤트 소싱에서 많은 양의 이벤트 처리
우리의 현재 시스템은 하루에 약 100 만개의 이벤트를 수신합니다 (현재 이벤트 소싱과 관련이 없습니다). 오랜 기간 동안 이벤트를 저장하려면 이벤트 저장소가 상당히 커질 수 있지만 롤링 스냅 샷을 자주 비우거나 제거하면 이벤트 소싱의 큰 장점 중 하나 인 시스템 히스토리 및 재생에 대한 정보가 손실 될 수 있습니다.
CQRS 아키텍처에서이 문제를 처리하는 일반적인 방법은 무엇입니까? 그것은 전혀 문제입니까? 이벤트 저장소에 더 많은 하드웨어를 던지거나 아키텍처 설계 단계에서 수행 할 수있는 작업이 있습니까?
우리는 새로운 읽기 모델을 만들거나 기존의 모델을 변경하거나 실수를하거나 새로운 정보를 얻을 필요가있을 때를 제외하고는 실제로 이벤트를 자주 재생하지 않습니다. 우리가 이벤트를 더 자주 닦는다면 우리는이 일을 할 수 없습니다. 당신은 * 오래된 사건이 거기에 있다고 말합니다. 그러나 우리가 너무 빨리 문질러 닦을 때, 그들은 역사상 충분하지 않습니다. – bitbonk
실제로 많은 이벤트가 비즈니스 가치가 낮다는 사실에 주목했습니다. 우리는 그들이 미래에 대답 할 수없는 특정 질문이 있다는 것을 깨닫고, 그들이 스크럽 될 수 있다는 결정을 내렸다. 그렇지 않으면 나는 마법 답이 있는지 확신하지 못합니다. 가능한 빨리 이벤트를 다시 읽어야합니다. 즉, 경계 상황에 따라 이벤트 저장소를 보유하거나 병렬로 다른 읽기 모델을 다시 빌드 할 수있는 방법을 찾는 것입니다. –
Makes 감각! 감사! – bitbonk