본문 바로가기
BackEnd/Project

[BigData] Ch01. 이커머스의 트래픽 특징과 Redis, Kafka 활용 전략

by 개발 Blog 2024. 9. 14.

공부 내용을 정리하고 앞으로의 학습에 이해를 돕기 위해 작성합니다.

 

E-comerce Traffic

이커머스에서 처리하는 주요 데이터 유형은 상품 데이터와 이력 데이터다. 이 데이터들은 사용자에게 맞춤화된 쇼핑 경험을 제공하고, 상품의 검색과 추천 정확도를 높이기 위해 필수적이다. 실시간으로 대량의 데이터를 효율적으로 처리하고 분석하기 위해 Kafka를 사용한다. Kafka는 데이터의 즉시성과 중복성 관리에 탁월하여, 빅데이터를 실시간으로 처리하는 데 적합하다.

 

Redis는 변화가 빠른 데이터를 캐싱하여 빠르게 응답할 수 있게 도와주며, 이는 전체 서비스의 반응 속도와 성능 최적화에 기여한다. 사용자의 요청은 사전에 정의된 품질 기준에 따라 처리되어야 하며, 이는 전체 시스템의 안정성과 신뢰성을 보장하는 데 중요하다.

E-commerce Key Value Business

이익 계산

  • 이익은 주로 매출과 광고 수익으로 구성된다.
  • 매출은 상품 판매에서 발생하며, 특히 높은 마진을 가진 제품의 효과적인 노출이 중요하다.
  • 광고 수익은 광고의 노출 빈도와 클릭률에 따라 달라지며, 이는 사용자의 구매로 직결될 수 있다.

매출 증대 전략

  • 우수한 판매자와의 협력을 통해 플랫폼의 상품 품질과 다양성을 확보해야 한다.
  • 결제 과정의 편리성과 보안성 강화로 사용자의 구매 경험을 개선한다.
  • 프로모션 및 멤버십 프로그램을 통해 고객 충성도와 재구매율을 높인다.

E-commerce 내 구현되는 Services

1. Monolith vs Microservice

이커머스 비즈니스에서는 서비스의 잦은 변경과 확장성 요구로 인해 마이크로서비스 구조가 많은 장점을 가진다. 각 서비스는 독립적으로 배포하고 관리할 수 있어, 시스템 전체의 리스크를 줄이고, 필요에 따라 유연하게 확장할 수 있다.

 

  • 서비스의 잦은 변경: 개별 서비스(모듈) 별로 적절한 배포 전략을 세울 수 있다.
  • 기능별 유연한 Scaling: 트래픽이 많은 서비스만을 대상으로 수평 확장을 통해 성능을 개선한다.
  • 신규 기능의 빈번한 추가: 독립성을 가진 마이크로서비스는 신규 기능의 추가가 용이하다.

2. 기본 서비스와 고급 기능

기본 서비스

  • 회원정보 서비스: 사용자의 기본 정보를 관리한다.
  • 가입/탈퇴 서비스: 사용자의 가입과 탈퇴 처리를 담당한다.
  • 로그인 서비스: 사용자 인증을 처리한다.
  • 검색서비스: 상품이나 정보 검색 기능을 제공한다.
  • 결제서비스: 결제 처리를 담당한다.
  • 배송서비스: 상품 배송 상태를 관리하고 정보를 제공한다.
  • 반품/교환 서비스: 상품 반품 및 교환을 처리한다.

고급 기능

  • 외부가격비교: 다른 플랫폼과의 가격 비교 정보를 제공한다.
  • 내부가격비교: 자체 플랫폼 내에서의 가격 비교 서비스를 제공한다.
  • 이력서비스: 사용자의 활동 이력을 관리한다.
  • 분석서비스: 구매, 판매, 프로모션, 매출 등 다양한 분석 정보를 제공한다.
  • 학습서비스: 사용자의 구매 패턴 및 선호도를 학습하여 맞춤 서비스를 제공한다.

Redis, Kafka UseCase

1. Redis 사용 사례

  • 장바구니: 로그인 시 장바구니 정보를 캐싱하고, 로그아웃하거나 일정 시간이 지나면 소멸시킨다.
  • 할인 정보: 할인이 적용되는 특정 기간 동안만 정보를 유지한다.
  • 쿠폰 정보: 사용자별, 제품별 할인 정보를 저장하고, 이벤트 종료 후 소멸시킨다.
  • 배송 정보: 배송 진행 상황을 실시간으로 사용자에게 제공한다.
  • 세션 및 토큰 정보: 로그인 상태 유지를 위해 사용하며, 로그아웃 시 소멸시킨다.

2. Kafka 사용 사례

  • 페이지 트래킹: 사용자의 페이지 접근 정보를 분석하기 위해 사용한다.
  • 광고 클릭 정보: 광고 클릭 데이터를 수집하여 광고 효율 분석에 사용한다.
  • 에러 정보: 페이지 탐색 중 발생하는 에러 정보를 수집하여 시스템의 이상을 탐지한다.
  • 구매 정보: 결제 이력을 기록하고 매출 집계에 사용한다.
  • 키워드 정보: 검색된 키워드 데이터를 분석하고 마케팅 전략에 활용한다.