아카이브사이트맵
© 2026 Rayon. All rights reserved.
DevDay
아티클랭킹스페이스채용
하이퍼커넥트 favicon하이퍼커넥트

Flink, KeyedProcessFunction, Redis를 활용한 실시간 추천 시스템 구축 노하우

by DD
2025-06-11
1년 전
조회수 10

Flink를 활용하여 유저의 실시간 이벤트를 조합하는 스트림 조인 서비스를 구축함

KeyedProcessFunction의 TimerService를 통해 유연한 지연 시간 제어 및 이벤트 조합 로직 구현

Redis를 활용한 중복 제거 로직으로 데이터 처리 지연 시간을 300ms에서 3ms 미만으로 개선

KeyedProcessFunction을 활용한 이벤트 조합

Flink의 KeyedProcessFunction은 유연한 상태 관리와 TimerService를 제공하여 복잡한 이벤트 조합 로직을 구현한다. 구체적으로, 이벤트 ID를 기준으로 이벤트를 파티셔닝하고, 각 키에 대한 상태를 관리한다. 따라서 타이머 설정을 통해 이벤트 도착 순서와 관계없이 조합을 수행하며, 지연 시간 조절이 가능하다.

무중단 배포를 위한 Savepoint와 Blue-Green 전략

Flink 애플리케이션의 상태 관리를 위해 Savepoint를 활용하여 배포 중 데이터 유실을 방지한다. 따라서, CheckpointedFunction을 통해 타이머 상태를 보존하고, 배포 후에도 이벤트 조합 성공률을 유지한다. Blue-Green 배포 전략을 통해 서비스 중단 없이 새로운 버전으로 전환하여 서비스 안정성을 확보한다.

Redis를 활용한 Exactly-Once Semantics 구현

데이터의 정확성을 보장하기 위해 Redis를 활용하여 중복 제거 로직을 구현한다. 구체적으로, Redis SET NX 명령어 또는 Lua script를 사용하여 동시성 문제를 해결하고, 중복된 이벤트 발행을 방지한다. 결과적으로, 데이터 처리 지연 시간을 획기적으로 줄여 실시간성을 향상시켰다.

AI 실시간 추천 시스템을 위한 Flink 기반 스트림 조인 서비스 구축기
고급
아키텍처
Flink
Redis
Kafka
Data
Backend
원문 읽기
원문 읽기

댓글 0

첫 번째 댓글을 남겨보세요!

관련 추천 글

카카오뱅크, AI 기반 FDS 시스템 구축으로 금융 사기 탐지 능력 향상!

카카오뱅크 로고

배달의민족, OSRM, Kafka, Redis로 배차 정확도 UP!

우아한형제들 로고

올리브영, Kafka 기반 준실시간 데이터 파이프라인 구축으로 45분 지연 해결!

올리브영 로고

Kafka 대신 RDB? 장시간 비동기 작업, Task Queue로 해결!

우아한형제들 로고

Iceberg와 Flink로 데이터 파이프라인(Data Pipeline) 성능 12배 향상!

라인 로고

DynamoDB 부하, Kafka와 Redis로 실시간 제어!

롯데온 로고
하이퍼커넥트 favicon하이퍼커넥트
고급
아키텍처
Flink
Redis
Kafka
Data
Backend

관련 추천 글

카카오뱅크, AI 기반 FDS 시스템 구축으로 금융 사기 탐지 능력 향상!

카카오뱅크 로고

배달의민족, OSRM, Kafka, Redis로 배차 정확도 UP!

우아한형제들 로고

올리브영, Kafka 기반 준실시간 데이터 파이프라인 구축으로 45분 지연 해결!

올리브영 로고