아카이브

프로젝트 8개, 태그 179개, 글 62편.

프로젝트

글 수 순

태그

179개
Redis 17면접 16CS 15JPA 9Spring 8동시성 7RabbitMQ 6결제 4멱등성 4Lua 4PostgreSQL 4관측성 3스케줄러 3아키텍처 3회고 3AOP 3Gmail API 3MySQL 3Rate Limit 3마스킹 2메시징 2벤치마크 2부하 테스트 2분산 락 2분산 트랜잭션 2비동기 2상태 머신 2성능 2원장 2웹훅 2인덱스 2인코딩 2임베딩 2자료구조 2재화 설계 2정합성 2커넥션 풀 2트랜잭션 2Backpressure 2CircuitBreaker 2epoll 2Hibernate 2JVM 2LLM 2MDC 2OCI 2OpenStack 2Pub/Sub 2QueryDSL 2Resilience4j 2Retry 2ShedLock 2Spring AI 2고가용성 1구조화 로깅 1낙관적 잠금 1네트워크 1대기열 1데이터 모델링 1도메인 모델링 1도메인 이벤트 1리팩터링 1마이그레이션 1메모리 1문자열 탐색 1바운디드 컨텍스트 1배치 처리 1배포 1버전 업그레이드 1보상 트랜잭션 1복제 1비관적 잠금 1비용 설계 1서비스 운영 1스냅샷 1스레드 풀 1스트리밍 1실패 격리 1알고리즘 1애그리거트 1역색인 1영상 1영속화 1운영 자동화 1원자성 1의존성 역전 1이벤트 루프 1장애 대응 1재고 1전달 보장 1전문검색 1점진적 활성화 1정규식 1측정 1캐시 1캡처 1커널 1타임존 1파이프라인 1포인트 1포트와 어댑터 1푸시 알림 1프록시 1하이브리드 검색 1헥사고날 아키텍처 1형태소분석 1Aho-Corasick 1AOF 1Apache HttpClient 1API 연동 1App Store Server Notification 1At-Least-Once 1BigDecimal 1Cache Stampede 1CGLIB 1Claude API 1Cluster 1Connector/J 1Consumer Group 1DB 설계 1DDD 1Debounce 1DLQ 1DTO 1DTO 프로젝션 1Elasticsearch 1Erlang 1Exponential Backoff 1FCM 1Fencing Token 1FIFO 1fork 1Full Jitter 1G1GC 1GC 1HikariCP 1HLS 1HTTP 1I/O 멀티플렉싱 1InnoDB 1Jackson 1JDBC 1JIT 1JSON 1JWT 1Loki 1Media Flow 1MSA 1MVCC 1N+1 1OAuth 1OpenTelemetry 1Outbox 1PEL 1pg_trgm 1pgvector 1PII 1Pipelining 1PortOne 1Prompt Caching 1RAG 1RDB 1Reactor 1Reflection 1RestClient 1RRF 1RTDN 1Sentinel 1Servlet Filter 1SHA-256 1Specification 1Spring Data JPA 1SSE 1Stream 1TCP 1Token Bucket 1UUID 1UX 1ZSET 1

태그를 누르면 아래 목록이 그 태그의 글만 남습니다.

전체 글

62편

2026

엑셀 한 장으로 영상 217편을 인코딩에 태웁니다 (스트리밍 반입과 조건부 UPDATE 선점)

137MB 원본을 힙에 담지 않고 임시 파일로 흘려보낸 이유, 파이프라인을 다섯 구간으로 자른 방식, 다중 인스턴스에서 ShedLock 없이 행 단위 조건부 UPDATE 로 선점한 근거, 그리고 Full Jitter 백오프를 직접 짠 이유를 코드와 E2E 로그로 정리했습니다. 접수에서 편성까지 2분 41초가 실측입니다.

코리안쌤

영상은 올린 그대로 재생하지 않습니다 (OCI Media Flow 로 인코딩 파이프라인 세우기)

mp4 하나를 올리면 왜 파일이 수백 개로 쪼개져 나오는지, 코덱과 컨테이너·적응형 비트레이트·HLS·세그먼트와 키프레임까지 인코딩의 원리를 훑고, 그걸 관리형 워크플로 한 방으로 처리하는 OCI Media Flow 가 어떤 추상인지 정리했습니다. 217편 강의 영상 파이프라인을 세우며 내린 실제 선택도 근거와 함께 적었어요.

코리안쌤

발행하고 잊습니다 (Redis Pub/Sub 과 Fire-and-Forget)

발행자와 구독자가 서로를 모른 채 채널로 연결됩니다. 편하지만 메시지를 저장하지 않아서, 발행 순간에 듣고 있지 않으면 그 메시지는 사라져요. 구독 커넥션의 제약, PUBLISH 의 O(N+M) 비용, 그리고 느린 구독자가 조용히 끊기는 진짜 유실 지점까지 파고들었습니다.

공통

구독자가 없어도 메시지를 남깁니다 (Redis Stream 과 Consumer Group)

Pub/Sub 은 발행하고 잊지만, Stream 은 로그처럼 메시지를 남기고 소비자가 어디까지 처리했는지 추적합니다. rax 로 쌓이는 내부 구조부터 PEL 의 이중 장부, XAUTOCLAIM 회수, at-least-once 가 정확히 어디서 만들어지는지까지, Redis 안의 작은 메시지 큐를 깊게 들여다봤어요.

공통

묶어서 실행하지만 되돌리지는 않습니다 (MULTI, EXEC, WATCH)

Redis 트랜잭션은 여러 명령을 큐에 모아 순차로 실행합니다. 그런데 RDB 를 떠올리며 롤백을 기대하면 배신당해요. 롤백이 없는 이유, WATCH 가 어떤 순간에 트랜잭션을 더럽히는지, 그리고 조건 로직이 낀 원자성은 왜 Lua 로 넘어가는지 소스 동작까지 따라가 정리했습니다.

공통

서버는 빠른데 왕복이 느립니다 (Pipelining 과 RTT)

Redis 명령 하나는 마이크로초인데 천 번을 부르면 느려집니다. 범인은 서버가 아니라 네트워크 왕복이에요. RTT 가 쌓이는 구조, TCP 의 Nagle 과 delayed ACK 가 얹는 지연, 파이프라이닝이 이벤트 루프에서 시스템 콜을 어떻게 접는지, 그리고 응답 버퍼가 메모리를 먹는 함정까지 정리했습니다.

공통