Day 70: AWS 장애 대응 및 Rails/TinyMCE S3 연동, 트랜스크라이버 코드 분석

Source

  • Field Notes/ReturnZero/Daily Notes/Day 70. 2021-09-08.md

Summary

70일차 일지. 주요 이슈는 AWS 리소스 부족 및 성능 장애로 인한 멀티리전(오레곤) 이전 대응이다. 개발 작업으로는 Rails 환경에서 TinyMCE 에디터를 통한 S3 이미지 업로드 기능 구현 시 Active Storage 설정 및 API 엔드포인트 생성 과정에서 여러 오류를 겪으며 해결책을 모색했다. 또한 호무라의 트랜스크라이버 코드 강독을 통해 DB 복제 지연 문제, Redis/RabbitMQ 큐 구조, VAD 및 dvector 기반 화자 식별 로직 등 시스템 아키텍처를 분석했다.

Key Points

  • AWS 리소스 부족 및 성능 장애 발생, 멀티리전(미국 오레곤)으로 마이그레이션 진행
  • Rails + TinyMCE + AWS S3 연동: Active Storage 설정, image_upload_handler/API 엔드포인트(/api/images) 구축 중 인증 및 설정 오류 해결 시도
  • 트랜스크라이버 코드 분석: Master DB 사용으로 Replication lag 회피, Redis(Request/Response) 및 RabbitMQ(App pusher) 큐 역할 구분
  • 음성 처리 파이프라인: VAD(발화 탐지), dvector(화자 특성 벡터) 기반 화자 식별 및 verify 로직, 칼디(Kaldi) 결과 후처리(wdiar) 흐름 파악