어제 밤에 다시 삽질했네. 사용자 한명이 회원가입했는데 주문시스템에선 탈퇴처리됐다고 난리야. 결제는 되었는데 리워드포인트가 안 들어오니까 고객센터 전화가 미친듯이 온다고 현타와서 새벽 4시까지 잡고 있었음
근데 진짜 문제는 우리가 서비스를 쪼갤 때 '도메인 경계' 이런 개념만 떠들지 실제로 데이터 싱크 맞추는 방법은 안 가르쳐준 거라 생각함. 마케팅팀에서 사용자 등급 변경하면 3분 뒤에 갑자기 주문이 실패되고 창고에선 재고가 이상하게 까먹는 식으로 누워서 떠드는 수준
사실 우리 같이 작은 스타트업에선 이벤트 소싱이나 CQRS 갖고 오기엔 구현 레벨이 너무 높음. 근데 단순히 API 콜로 데이터 공유하자니 네트워크 장애때마다 순환참조 걸리고 데드락 터져서 운영팀이 매일 진절먹음
동료 한명이 '그냥 필요한 필드만 복제해서 로컬에 캐싱하자'고 했는데 이거 또 데이터 정합성 터져서 골라티나 상황. 여러분들은 이런 싱크 문제 어떻게 해결하고 있음? 간단하면서도 운영팀 인생 좀 살려줄만한 방법이 있다면 진심으로 배우고 싶음
출처
- Why sharing domain data across microservices is a silent killer (community_intel)
- How to get support from Claude support team (community_intel)
- Ask HN: How do US startups handle payroll for Nigerian remote teams? (community_intel)