카
카카오페이
December 10, 20241회
지연이체 서비스 개발기: 은행 점검 시간 끝나면 송금해 드릴게요! (feat. 발표 후기)
간단 소개
카카오페이 지연이체 서비스를 Kafka 기반으로 재설계하고 성능을 8배 향상시킨 개발 경험 공유.
AI Summary
- 지연이체 서비스 재설계 배경 및 목표
- 기존 RabbitMQ 기반 시스템에서 Kafka 기반으로 전환 필요성 발생
- 은행 점검 시간 이후 자동 송금 기능 유지를 목표
- Kafka 도입을 통해 메시지 큐 시스템 변경 및 서비스 지속성 확보
- Kafka 기반 아키텍처 설계 및 구현
- 스케줄러를 통해 송금 건을 읽어 Kafka에 Produce하고, Consumer가 Consume하여 송금 실행
- 중복 송금 방지를 위해 상태 체킹 로직, 유저락 적용, Record Key에 userId를 사용하여 동일 사용자 송금은 동일 Consumer에서 처리되도록 구현
- 성능 개선 및 결과
- Consumer 수 증가, Batch Read 설정, Multi Thread 적용을 통해 송금 실행 속도 향상
- 1분당 처리 건수가 8배 이상 증가하는 성능 개선 효과 달성
- 아키텍처 설계 시 중복 발생 위험, 동시성 문제, 락 사용, 타 서버 영향 등을 고려해야 함을 강조
Next Feeds
TurboRepo Just-in-Time Packages 적용기 Feat. ModuleResolution
Turborepo의 Just-in-Time Packages 적용 과정과 ModuleResolution에 대한 이해, 트러블슈팅 경험을 공유합니다.
TurboRepoJust-in-Time PackagesModuleResolutionTypescript모노레포
2024. 12. 10.
카카오엔터테인먼트FE
TurboRepo Just-in-Time Packages 적용기 Feat. ModuleResolution
TurboRepo의 Just-in-Time Packages 적용 과정과 ModuleResolution에 대한 이해, 트러블슈팅 경험을 공유합니다.
TurboRepoJust-in-Time PackagesModuleResolutionTypescript모노레포
2024. 12. 10.
카카오엔터테인먼트FE
[디지털 트윈 기술 #3] 디지털 트윈의 자산 표준화 방안 설계 및 양산 적용
현대오토에버의 디지털 트윈 자산 표준화 방안으로 AAS를 소개하고, 설계 및 양산 적용 사례를 제시합니다.
AAS디지털 트윈자산 표준화RAMI 4.0스마트 제조
2024. 12. 8.
현대자동차
Java를 주로 다루는 개발자가 생각하는 Kotlin 장점 🌼
Java 개발자가 Kotlin 사용 시 얻을 수 있는 문법적 간결성, 안정성, 생산성 향상 등의 장점을 소개합니다.
KotlinJava문법Nullable확장함수
2024. 12. 8.
올리브영

TeamCity로 윈도우 클라이언트 배포 파이프라인 만들기
올리브영 POS팀이 TeamCity를 이용하여 윈도우 클라이언트 배포 파이프라인을 구축하고 개선한 과정과 효과를 설명합니다.
TeamCityCI/CD배포 자동화POS 시스템올리브영
2024. 12. 6.
올리브영

ArchUnit으로 아키텍처 원칙을 코드로 지키는 방법
ArchUnit을 사용하여 아키텍처 원칙을 코드로 정의하고 검증하는 방법을 소개합니다. 코드 품질을 향상시키고 유지보수성을 높일 수 있습니다.
ArchUnit아키텍처 검사테스트 자동화코드 품질의존성 관리
2024. 12. 6.
펫프렌즈