pile·
아키텍처·마켓컬리마켓컬리 Hello World·

헤이조이스 웨비나 시스템을 2주 만에 만든 방법

컬리 자회사 플래너리가 코로나로 오프라인 강연을 온라인으로 전환하며 2주 만에 자체 웨비나 시스템을 개발한 이야기다. 초소형 조직이 AWS IVS·Sendbird 같은 외부 솔루션과 서버리스 MSA를 적극 활용해 라이브 스트리밍·실시간 채팅·참석자 관리를 빠르게 구현했고, 3년간 200회 넘는 웨비나를 무장애로 운영 중이다.

핵심 포인트
  • 줌·이벤터스 등 외부 솔루션은 별도 사이트 접속·운영 리소스 과다·데이터 수집 불가 문제가 있어 자체 웨비나를 결정했다.
  • 라이브 스트리밍은 AWS IVS, 채팅은 Sendbird Open Channel(기본 1000명, 초과 시 Dynamic partitioning)로 빠르게 구성했다.
  • 데이터는 GraphQL과 DynamoDB, AWS AppSync·EventBridge 기반 서버리스 MSA로 구현했다.
  • 크롬 자동재생 정책(음소거 필수)과 새로고침 시 재음소거 문제를 안내 UI로 우회했다.
  • DynamoDB 항목당 400KB 한계 때문에 웨비나 정보와 참석자 데이터를 테이블 분리해 1000명 이상을 수용했다.
상세 정리
  • 요구사항: 사용자에겐 이메일·카톡으로 시청 URL 발송과 스트리밍/채팅/강연정보 UI, 운영자에겐 결제-웨비나 연결로 참가자 관리, 데이터엔 참가·시청 정보 수집이 필요했다.
  • AWS IVS: ivsClient SDK로 채널을 생성해 channel·streamKey를 받고, playback_url을 Video.js 플레이어 src에 연결했다. controls·inline 재생·자동재생·replay off 등을 설정해 채팅과 영상을 동시 화면으로 제공했다.
  • Sendbird: 웨비나 생성 시 Open Channel을 함께 만들고, 유저 접속 시 id·닉네임으로 connect해 헤이조이스 유저 정보를 채팅에 그대로 썼다. 이후 meta counter로 리액션, user list로 참석자·실시간 시청자 수 기능을 추가했다.
  • 서버리스 구성: 외주로 개발된 강연 리스트·결제를 제외한 신규 서비스는 MSA로 만들고, 기존 RDB의 주문 정보에서 참석자를 뽑아 웨비나 DynamoDB에 적재하는 작업을 Lambda로 정의해 EventBridge로 매시간 배치했다.
  • 자동재생 개선: 강연 전 미리 접속해 검은 화면을 보는 사용자가 많아 "시작했나요?" CS가 잦았다. 크롬 정책상 자동재생은 음소거가 필요하고 새로고침 시 재음소거되므로, 시작 전엔 남은 시간, 시작 후엔 음소거 안내를 노출해 문의를 줄였다.
  • 데이터 스키마 개편: 초기엔 하나의 웨비나 item에 URL·제목·공지·연사·참석자 리스트를 모두 저장했는데, 사용자 1명이 약 200바이트라 1000명이면 400KB 한계를 넘었다. 참석자 테이블을 분리해 웨비나 id와 사용자 세트로 접속·출석 정보까지 보관하게 했다.
  • 성과: 2020년 8월 2주 만에 론칭해 200회 이상 강연을 소화했고, 무료 웨비나 오픈·참석자 일괄 등록 등으로 운영 부담을 지속적으로 줄이고 있다.
왜 읽나소규모 팀이 AWS 관리형 서비스와 서버리스로 라이브 스트리밍 서비스를 빠르게 만들려는 개발자에게 IVS·Sendbird 연동과 DynamoDB 스키마 설계 함정을 보여주는 사례.
마켓컬리
마켓컬리 Hello World 블로그
원문은 여기서 이어서 읽을 수 있어요
원문 읽기
읽음 (0)

이 글과 비슷한

  1. 아키텍처·dropbox-techDropbox Tech·

    Dropbox의 통합 콘텐츠 처리 플랫폼 Riviera, AI 시대로의 진화

    Dropbox가 파일 미리보기 생성용 내부 서비스로 출발한 콘텐츠 처리 플랫폼 Riviera가 약 10년에 걸쳐 Search·Replay·Sign·Dash가 공유하는 플랫폼으로, 나아가 AI 시대의 문서 처리 인프라로 진화한 과정을 다룬다. 미리보기를 '재사용 가능한 변환들의 조합'으로 재정의한 설계가 확장의 핵심이었고, 지금은 100개 넘는 변환 능력으로 초당 수십만 건을 처리한다. 최근엔 공개 API와 MCP로 외부 개발자에게도 열렸다.

  2. 아키텍처·github-engGitHub Engineering·

    AI 시대에 달라진 '예스'의 비용

    GitHub Engineering 에서 AI 코드 생성 도구가 보편화되면서 소프트웨어 엔지니어링 경제학이 어떻게 달라졌는지를 다룬다. 코드를 작성하는 비용은 낮아졌지만 그 코드를 소유하고 유지보수하는 비용은 그대로라는 점을 핵심 논지로, 엔지니어링 팀의 의사결정 방식도 달라져야 한다고 주장한다.

    #engineering-process#ai-code-generation#code-ownership+1
  3. 아키텍처·당근당근 테크블로그·

    천만 MAU를 지탱하는 커뮤니티 시스템 아키텍처

    당근 커뮤니티실이 2021년 약 100 RPS에서 현재 약 20,000 RPS를 처리하는 규모로 성장한 과정과, 이를 가능하게 한 "여러 웹앱 + 하나의 서버앱" 모듈형 모놀리스 아키텍처를 다룬다. 동네생활, 모임, 카페, 아파트 서비스를 소규모 팀이 장기 운영 가능한 구조로 설계한 원칙과, 장애 경험에서 도출한 resilience 패턴까지 단계별로 정리했다.

    #event-driven#kafka#postgres+2