Skip to content

[STORY] Polly TTS 음성 캐싱으로 비용/성능 최적화 #8

Description

@DDINGJOO

배경

현재 음성 변환 요청마다 Polly API를 호출하고 있어 동일 메시지 재요청 시에도 비용이 발생하고 응답 지연이 있음.
메시지 ID 기반 캐싱으로 중복 Polly 호출을 방지하여 비용 절감 및 응답 속도 개선 필요.

수용 기준(AC)

  • 메시지별 음성 데이터(S3 키)를 DynamoDB에 저장
  • 남성/여성 음성 각각 캐싱 (maleVoiceKey, femaleVoiceKey)
  • 캐시 히트 시 Polly 호출 없이 S3 Pre-signed URL 반환
  • API 요청 형식 변경 (text → messageId, roomId)
  • 응답에 캐시 여부(cached) 포함
  • 빌드/린트 통과

구현 메모/리스크

  • DynamoDB 스키마 변경 없음 (스키마리스)
  • 기존 API 요청 형식 변경으로 프론트엔드 수정 필요
  • S3 키만 저장하여 Pre-signed URL 만료 문제 해결

연결된 Epic

#7

Metadata

Metadata

Assignees

No one assigned

    Labels

    storyUser story

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions