10장 알림 시스템 설계

가상면접으로 배우는 대규모 시스템 설계 기초

10장 알림 시스템 설계

알림 시스템

  • 모바일 푸시 알림
  • SMS 메시지
  • 이메일

알림 유형별 지원 방안

  • IOS 푸시 알림
    • 알림 제공자 : 애플 푸시 알림 서비스(APNS)
      • 단말 토큰
      • 페이로드
    • APNS : 애플이 제공하는 원격 서비스
    • IOS 단말
  • 안드로이드 푸시 알림
    • FCM : firebase cloud messaging
  • SMS 메시지
    • 트월리오
    • 넥스모
  • 이메일
    • 샌드그리드
    • 메일침프

연락처 정보 수집 절차

알림을 보낼려면 모바일 단말 토큰, 전화번호, 이메일 주소등의 정보가 필요하다 수집 방법을 고민할 필요가 있다

알림 전송 및 수신 절차

  • 알림 시스템
  • 제3자 서비스
  • IOS, AOS, SMS, 이메일 단말
  • 문제점
    • SPOF
    • 규모 확장성
    • 성능 병목
  • 메시지 큐
  • 캐시
  • 알림 서버
  • 데이터베이스
  • worker 서버

상세설계

  • 안정성
    • 데이터 손실 방지
      • 재시도 메커니즘이 존재해야 됨
    • 알림 중복 전송 방지
      • 분산 시스템 특성상 가끔 같은 알림이 중복 전송됨
    • 알림 템플릿
    • 알림 설정
    • 전송률 제한
    • 재시도 방법
    • 푸시 알람과 보안
    • 큐 모니터링
    • 이벤트 추적

참조