본문 바로가기
전체 1578
1566
Database20분 읽기
CDC와 Debezium — DB 변경을 실시간 파이프라인으로 흘려보내기
폴링 대신 트랜잭션 로그(WAL)를 읽어 DB 변경을 실시간으로 캡처하는 CDC. Debezium과 Kafka Connect로 캐시 무효화·검색 인덱스 동기화·아웃박스 패턴을 구현하고 스키마 변경까지 다루는 실전 가이드.
#CDC#Debezium#Kafka Connect
2026.09.08
1565
Database20분 읽기
PostgreSQL 인덱스 완전정복 — B-tree·GIN·GiST·BRIN 언제 어떻게 쓰나
PostgreSQL 인덱스 총정리. B-tree·GIN·GiST·BRIN을 언제 쓰는지, 복합 인덱스 컬럼 순서 정하는 법, 부분·표현식·커버링 인덱스, EXPLAIN으로 실제 타는지 확인하는 법과 인덱스가 안 타는 흔한 이유까지 실무 기준으로 정리했다.
#PostgreSQL#인덱스#B-tree
2026.09.07
1564
Frontend17분 읽기
아일랜드 아키텍처와 부분 하이드레이션 — Astro·Qwik으로 자바스크립트 줄이기
하이드레이션은 왜 비싼가. 아일랜드 아키텍처와 Qwik의 resumability, Astro의 client:* 지시자로 자바스크립트를 줄이는 법, 그리고 언제 SPA를 그냥 쓰는 게 더 나은지까지 실무 경험으로 정리했습니다.
#아일랜드 아키텍처#부분 하이드레이션#Astro
2026.09.07
1563
Frontend19분 읽기
TanStack Query로 서버 상태 관리 — 캐싱·무효화·낙관적 업데이트 실전 패턴
TanStack Query로 서버 상태를 다루는 실전 패턴 정리. 서버 vs 클라이언트 상태 구분, staleTime/gcTime 차이, queryKey 설계, invalidation, 낙관적 업데이트, 프리페치, 흔한 실수까지 코드로 설명합니다.
#TanStack Query#React Query#서버 상태 관리
2026.09.07
1562
Frontend19분 읽기
INP 최적화 실전 — FID를 대체한 코어 웹 바이탈, 롱태스크를 쪼개 200ms 벽 넘기
FID를 대체한 INP(Interaction to Next Paint) 실전 최적화 가이드. 롱태스크 쪼개기, scheduler.yield(), React transition, LCP·CLS 동반 개선, RUM 측정과 340→170ms 실전 사례까지 정리했다.
#INP#Core Web Vitals#성능 최적화
2026.09.06
1561
Frontend19분 읽기
CSS 컨테이너 쿼리와 :has() — 미디어쿼리로는 못 풀던 반응형을 컴포넌트 단위로
뷰포트 미디어쿼리의 한계를 @container 컨테이너 쿼리와 :has() 부모 선택자로 넘어서는 실전 패턴을 정리했다. 컴포넌트 단위 반응형을 실현하는 실제 CSS 코드, cqi 단위, 마이그레이션 함정, 2025년 브라우저 지원까지 한 번에 다룬다.
#CSS#Container Queries#has 선택자
2026.09.06
1560
Frontend20분 읽기
시그널(Signals) 완벽 정리 — React·Solid·Svelte 5·Angular가 반응성을 다시 짠 이유
시그널(signal·computed·effect)은 값이 바뀐 곳만 세밀하게 다시 실행하는 반응성 모델이다. 가상DOM과 뭐가 다른지, Solid·Svelte 5 룬·Angular·React가 같은 이름으로 어떻게 다르게 구현했는지 실전 코드로 비교한다.
#시그널#반응성#Solid
2026.09.05
1559
Infra23분 읽기
OpenTelemetry 실전 — 트레이스·메트릭·로그를 하나로 묶는 벤더 중립 관측성
OpenTelemetry로 트레이스·메트릭·로그를 하나의 표준으로 계측하는 실전 가이드. 자동/수동 계측, W3C 컨텍스트 전파, 스팬 설계, head/tail 샘플링, Collector, 그리고 메트릭 카디널리티 함정까지 정리했다.
#OpenTelemetry#관측성#분산추적
2026.09.05
1558
Backend17분 읽기
gRPC vs REST vs GraphQL — 2026 API 프로토콜 선택 가이드
gRPC·REST·GraphQL을 성능·스키마·스트리밍·브라우저·오버페칭·툴링으로 3자 비교. 내부/외부 API별로 언제 무엇을 골라야 하는지 결정 기준까지 정리했다.
#gRPC#REST API#GraphQL
2026.09.04
1557
Backend20분 읽기
레이트 리미팅 알고리즘 — 토큰 버킷·슬라이딩 윈도우 구현과 분산 환경에서의 정확도
고정/슬라이딩 윈도우, 토큰·리키 버킷을 언제 쓰고 어떻게 구현하나. Redis Lua로 read-modify-write 경쟁을 없애 원자성을 지키고, 429·Retry-After를 제대로 내려주며, 분산 노드에서 정확도를 잃지 않는 실전 방법을 코드로 정리한다.
#rate limiting#토큰 버킷#슬라이딩 윈도우
2026.09.04
1556
Backend20분 읽기
아웃박스 패턴(Transactional Outbox) — 이중 쓰기 문제와 신뢰성 있는 이벤트 발행
DB 저장과 이벤트 발행을 나눴다가 한쪽이 실패하는 이중 쓰기 문제를 아웃박스 패턴으로 해결하는 법. outbox 테이블 스키마, 폴링 릴레이 vs CDC, at-least-once와 멱등 소비까지 실전 코드로 정리한다.
#아웃박스패턴#transactional outbox#이중 쓰기
2026.09.04
1555
AI16분 읽기
로컬 LLM 서빙 — Ollama·vLLM·llama.cpp 비교와 운영 기준
로컬 LLM 서빙 도구 Ollama·vLLM·llama.cpp를 처리량·연속 배칭·양자화·GPU 메모리 기준으로 비교한다. KV 캐시 계산법, OpenAI 호환 API 붙이는 법, 상황별로 언제 무엇을 써야 하는지까지 실무 관점에서 정리했다.
#로컬 LLM#vLLM#Ollama
2026.09.03