카테고리

Git Ranker

[Git Ranker #6] GitHub Search API에서 GraphQL로 전환

9 분 소요

Search API의 호출 수와 리뷰 데이터 한계를 넘기 위해 Git Ranker가 GraphQL 기반 연도별 병렬 조회 구조로 바뀐 과정과, 현재 구현이 1년 제약·동적 응답·비용 관리를 어떻게 다루는지 정리한다.

[Git Ranker #4] 순위 및 티어 계산 기능 구현

6 분 소요

가입 직후에는 COUNT 쿼리로 즉시 순위를 계산하고, 전체 분포는 MySQL Window Function과 Spring Batch Tasklet으로 다시 맞췄다. 서비스 초기의 ‘1등인데도 낮은 티어’ 문제를 하이브리드 티어 규칙으로 정리한 구현 기록

맨 위로 이동 ↑

Backend

JPA와 MySQL로 구현한 동시성 제어

8 분 소요

Redis 대신 JPA의 Pessimistic Lock과 MySQL을 활용하여 좋아요 기능의 동시성 문제를 해결하고, 시스템 복잡도를 줄이면서 데이터 정합성을 보장한 과정을 다룹니다.

맨 위로 이동 ↑

Home Lab

맨 위로 이동 ↑

Database

SQL 튜닝을 통한 API 성능 최적화 (1편)

9 분 소요

100만 개 데이터 환경에서 6.57초 걸리던 API를 409ms로 단축시킨 SQL 튜닝 과정입니다. 인덱스 설계 전략, 복합 인덱스 활용, JOIN 최적화를 통해 94% 성능 향상을 달성했습니다.

맨 위로 이동 ↑

AI

맨 위로 이동 ↑

Architecture

맨 위로 이동 ↑

Algorithm

맨 위로 이동 ↑

Spring Batch

맨 위로 이동 ↑