Amazon ElastiCache for Valkey로 텍스트 기반 게임 이미지 로딩 속도 98% 개선!
뷰컴즈(Viewcommz)는 Amazon ElastiCache for Valkey의 벡터 검색(Vector Search) 기능을 활용하여, 텍스트 기반 게임 '타닥 v2'의 이미지 로딩 속도(Image Loading Speed)를 개선
CESC(Context Enabled Semantic Caching) 아키텍처를 통해 사용자 입력, 월드 메타데이터, 캐릭터 상태를 결합한 임베딩 벡터(Embedding Vector)를 생성하여 캐싱
ElastiCache for Valkey 도입 후, 캐시 적중 시 응답 속도(Response Time) 98% 단축 및 LLM 호출 비용 35% 절감
뷰컴즈는 캐시 미스(Cache Miss) 발생 시 텍스트 기반 스토리 출력, 비동기 이미지 생성(Async Image Generation)을 통해 사용자 경험(User Experience) 유지
향후 사운드 및 영상으로 맥락 기반 추천을 확장하여 멀티모달(Multi-modal) 플랫폼으로 진화할 계획
CESC(Context Enabled Semantic Caching) 아키텍처 심층 분석
CESC(Context Enabled Semantic Caching)는 뷰컴즈가 설계한 캐싱 전략으로, 사용자 입력의 의미(Semantic)와 맥락(Context) 정보를 결합하여 캐시 적중률을 높인다.
사용자 입력(User Input), 월드 메타데이터(World Metadata), 캐릭터 상태(Character Status)를 임베딩 벡터로 변환
ElastiCache for Valkey의 벡터 검색(Vector Search)을 통해 유사한 맥락의 이미지 검색
캐시 키(Cache Key)가 단순 문자열이 아닌, 맥락을 반영한 벡터이므로 유사 이미지 재사용(Reuse of Similar Images) 가능
이러한 접근 방식은 텍스트 기반 게임의 다양한 월드(World) 환경에서 일관된 시각적 경험을 제공하는 데 기여한다.
Amazon ElastiCache for Valkey의 기술적 특징
Amazon ElastiCache for Valkey는 Redis OSS와 호환되는 완전 관리형 인메모리 캐시 서비스이다.
비용 효율성(Cost Efficiency): Redis OSS 대비 서버리스(Serverless)는 33%, 노드 기반은 20% 저렴
향상된 성능(Improved Performance): Valkey 8.0의 I/O Multi-thread 아키텍처로 처리량(Throughput) 최대 230% 증가 및 지연 시간(Latency) 70% 개선
벡터 검색(Vector Search) 및 시맨틱 캐싱(Semantic Caching) 지원: 생성형 AI 및 에이전트 기반 서비스에 필요한 기능 제공
특히, 마이크로초 단위의 지연 시간으로 수십억 개의 고차원 벡터 검색이 가능하다는 점이 주목할 만하다.
HNSW 인덱스 및 하이브리드 검색 구현
타닥은 멀티버스 플랫폼의 특성을 고려하여, Valkey의 Hash 구조에 메타데이터를 저장하고 HNSW(Hierarchical Navigable Small World) 인덱스를 적용했다.
HNSW 인덱스(HNSW Index): 고차원 벡터 검색을 위한 그래프 기반의 근사 최근접 이웃 검색 알고리즘
파티셔닝(Partitioning): World ID를 Tag 필드로 지정하여 논리적인 검색 범위 분리
하이브리드 검색(Hybrid Search): Valkey GLIDE를 활용하여 Pre-filtering + KNN 검색 구현
이러한 구조는 대규모 데이터(Large-scale Data) 환경에서도 효율적인 검색 성능을 보장하며, 다양한 월드의 이미지를 정확하게 매칭하는 데 기여한다.
LLM 기반 후처리(Post-processing) 및 Fallback 전략
검색된 후보 이미지의 품질을 높이기 위해, 뷰컴즈는 LLM Verifier를 활용한 후처리 과정을 거친다.
Context Comparison: LLM에게 현재 게임 상황과 후보 이미지 묘사를 비교
Selection: 상황과 가장 일치하는 1장의 이미지 선택, 부적합 시 Reject
Safety: safetyFilterStatus 메타데이터를 재확인하여 부적절한 컨텐츠 노출 방지
캐시 미스(Cache Miss) 발생 시, 텍스트 기반 스토리 출력 및 비동기 이미지 생성(Async Image Generation)을 통해 사용자 경험(User Experience) 저하를 방지한다.
캐시 친화적인 게임 구조 설계
뷰컴즈는 CESC 도입과 함께, 캐시 적중률을 극대화하기 위한 게임 구조를 설계했다.
구조화된 이벤트(Structured Events): 월드 진입, 보스 조우, 아이템 획득 등 주요 이벤트 맥락을 구조화
시각적 맥락(Visual Context) 유도: 서로 다른 사용자가 플레이하더라도 유사한 시각적 맥락 발생 유도
캐시 적중률(Cache Hit Rate) 상승: 트래픽 증가에 따라 자연스럽게 캐시 적중률 상승
이러한 설계는 UGC(User Generated Content) 기반 플랫폼에서 지속적인 성능 향상과 일관된 사용자 경험을 제공하는 데 기여한다.
비용 절감 및 UGC 생태계 활성화
Amazon ElastiCache for Valkey 기반의 CESC 도입은 비용 절감과 UGC 생태계 활성화에 기여했다.
비용 절감(Cost Reduction): 전체 트래픽의 35%를 캐시로 처리하여 LLM 호출 비용 35% 절감
트래픽 증가에 따른 비용 완만 증가: 서비스 성장과 사용자 증가에 따라 사용자당 평균 비용(Cost per User) 감소
데이터 네트워크 효과(Data Network Effect): 월드와 스토리 증가에 따라 캐시 적중률 지속 상승
결과적으로, 뷰컴즈는 지속 가능한 비즈니스 모델(Sustainable Business Model)을 구축하고, UGC 생태계의 경험 개선(Experience Improvement)을 달성했다.