ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [aws summit seoul 2023] 삼성전자/쿠팡의 대규모 트래픽 처리를 위한 클라우드 네이티브 데이터베이스 활용
    AWS 2024. 3. 4. 21:04

    aws summit seoul 2023 에서 발표된 삼성전자/쿠팡의 대규모 트래픽 처리를 위한 클라우드 네이티브 데이터베이스 활용 영상을 보고 정리한 내용입니다. 

     

     

    • auroradba, elastic cache 를 활용한 사례
    • 현대 애플리케이션의 특징
      • 시스템이 매우 복잡하고 사용자도 많다.
      • 애플리케이션과 스토리지가 디커플링 되어 있음
      • rest api 로만 처리하지 않고 graphQL이라던가 하나의 엔드포인트로 여러 데이터베이스의 접근 권한을 별도로 가져갈 수 있음
    • 목적에 맞는 데이터베이스

     

    • 데이터베이스 선택 시 고려 요소
      • 애플리케이션 워크로드
      • 데이터의 형태
      • 애플리케이션 성능 요구사항
      • 운영 부담

     

    삼성전자 사례 
    • 국내 이동통신 3사와 함께 런칭 (SMS, LMS)
    • 인터넷망 보급하면서 RCS 표준에 따라 설계/구현 - 그룹 메세지, 파일전송, 챗봇 플랫폼 등 기능
      • 31,000,000 사용자 (3년 사이에 5배 정도 가입자 증가 / 삼성폰에 내장앱으로 제공, 폰 판매량이 늘면 사용자도 늘어남)
      • 49,000,000 개인 메시지 / 일
      • 38,000,000 기업 메시지 / 일
    • RCS 1.0 : on-premise -> AWS 로 Lift and shift 로 마이그레이션
      • HSS (가입자 연결 정보 처리 모듈) 성능에 따라 클러스터마다 약 백만 가입자 정도 처리 - 10개~20개 정도 클러스터 필요 (650만 가입자 대상)
    • RCS 2.0 : MSA 로 재설계
      • 마이크로 서비스와 데이터 의존성을 분리하는 것을 목표로 함 (stateless)
      • shared repository architecture style
        • 여러 클러스터에 나누어 처리되던 데이터를 하나의 데이터 제공자 서비스에서 제공해야 하기 때문에 빠른 응답 속도와 같은 품질 보장 필요
        • 서비스 별로 동일한 데이터를 제공할 수 있도록 정합성 품질 보장도 필요
        • 정합성과 성능은 트레이드 오프되는 경우가 많음
    • 챗봇 브랜드 정보 제공 서비스
      • 카드 결제 메세지 등
      • 매우 많은 읽기, 매우 적은 쓰기
      • 변경이 적은 데이터를 클라이언트가 Polling 하는 시스템
      • aurora 와 같은 rdb 를 고려했으나 성능을 만족할 수 없었음 -> ElastiCache 고려하게 됨
        • 읽기 성능 극대화 가능하나 정합성 손실은 감수해야 함
          • ElastiCache 의 key event 구독을 활용할 수 있음 -> 특정 데이터가 변경되었다는 것을 전파 -> 캐시 갱신
          • 정합성 파괴 시간을 예측할 수 있어야 함
    • 가입자 연결 정보 제공 서비스
      • 이동통신단말의 잦은 주소 변경 정형 데이터
      • 클라이언트 소스 ip 와 같은 연결 정보를 최신화으로 유지해야 함 -> 소스 Ip 변경을 반영하지 못하면 a 에게 전달되어야 하는 메세지가 b 에게 전달될 수도 있음
      • dynamoDB - strong consistency read 옵션 제공, aurora 와 같은 RDB 는 정보제공 서비스 내에서 consistency lock 을 구현하는 방법으로 정합성 획득 -> 성능 품질 저하 감수해야 함
      • dynamoDB - strong consistent read, ElastiCache - consistency lock, auroradb - consistency lock 기능을 활용하여 성능과 정합성을 만족하는 shared repository 설계 가능
      • 적용 효과
        • 개인 메시지 5배, 기업 메시지 10배 성능 향상
        • 비용 30% 절감
        • 장애 발생율 13% 개선

     

     

    쿠팡 사례
    • 30개 지역 100여개 물류센터, 약 1800만명 회원 대상 서비스
    • 하나의 노드가 수용할 수 있는 트래픽은 한정되어 있음
    • 마이크로서비스를 적용해도 특정 이벤트가 있을 경우 (ex.물류 센터 증가) 관련한 트래픽이 증가함
      • 서비스 내에서 서비스를 더 세분화 하거나 DB 샤딩 적용하여 사용
    • 스마트 지원 서비스 개발 조건 (DML, DDL 등의 수동 작업/프로세스를 자동화 한 시스템)
      • 신뢰 가능한 메타 정보 제공 - 최신의 데이터를 사용자에게 제공해야 함
      • 장애 즉각 대응
        • 예측 가능한 장애에 대한 방어 프로세스 - 모니터링, 에러 로그
      • 커뮤니케이션 최소화
        • DB 표준화, 쉬운 서비스 가이드/Q&A , 에러 패턴 정리
      • 서비스 안정화 방법들
        • 세션 관리
        • 데이터 사이즈 관리
        • 쿠팡 자체 개발한 블루/그린 서비스 - 데이터베이스 가용성 확보 목적
    반응형

    댓글

Designed by Tistory.