OpenTelemetry + Langfuse 분산추적 시스템 구축
LLM 서비스에 분산 추적을 붙이는 과정을 정리합니다. logs·metrics·traces와 W3C Trace Context, OpenTelemetry의 아키텍처·OTLP·SDK 구성과 instrumentation, 그리고 Langfuse와 ClickHouse 활용·최적화를 다룹니다.
Continue reading »LLM 서비스에 분산 추적을 붙이는 과정을 정리합니다. logs·metrics·traces와 W3C Trace Context, OpenTelemetry의 아키텍처·OTLP·SDK 구성과 instrumentation, 그리고 Langfuse와 ClickHouse 활용·최적화를 다룹니다.
Continue reading »MySQL 8.0의 EXPLAIN과 EXPLAIN ANALYZE로 실행 계획을 읽는 방법을 정리합니다. type·key·rows·filtered·Extra 컬럼의 의미를 짚고, 풀스캔·filesort·인덱스 미사용·Using temporary를 포함한 6개 최적화 사례를 다룹니다.
Continue reading »pytest-django로 Django 마이그레이션 스크립트를 검증하는 방법을 정리합니다. 스키마·데이터 마이그레이션 테스트 코드 작성 시나리오와 pytest 설정, 그리고 teardown·실행 순서에서 겪은 트러블슈팅과 해결 방안을 다룹니다.
Continue reading »Anthropic이 공개한 MCP가 M×N 통합 문제를 어떻게 풀어내는지, 프로토콜의 프리미티브와 컨텍스트 표현 방식, 날씨 정보를 가져오는 요청/응답 예시, 그리고 최근 주목받는 이유와 활용 사례를 정리합니다.
Continue reading »유저 모드와 커널 모드가 나뉘는 이유와 user-kernel 경계를 넘을 때 드는 비용을 Win32 syscall 기준으로 정리하고, 호출 빈도·호출당 작업량 관점의 완화 전략과 IPC·공유 메모리 벤치마크 결과를 함께 다룹니다.
Continue reading »컨텍스트 스위칭이 왜 필요하고 CPU·OS가 상태를 어떻게 저장·복원하는지, 프로세스·스레드·경량 스레드의 오버헤드를 비교하고 Python에서 비동기·멀티프로세싱으로 스위칭을 줄이는 방법을 정리합니다.
Continue reading »CPU 파이프라인과 분기 예측이 실패할 때 드는 패널티를 짚고, 분기를 제거하는 구체적인 기법과 SIMD와의 관계, 실제 예제와 측정 도구, 그리고 branchless 코드가 오히려 불리해지는 경우까지 정리합니다.
Continue reading »CPU 캐시의 동작 원리와 하드웨어·소프트웨어 프리패칭 기법을 정리하고 순차 처리가 왜 유리한지 짚습니다. numpy로 순차 접근과 랜덤 접근의 속도 차이를, 그리고 순차 검색이 이진 검색보다 빠른 경우를 실측으로 확인합니다.
Continue reading »Grafana Loki로 로그 시스템을 구축한 과정을 정리합니다. Loki의 특징과 컴포넌트 구성, 로그 쿼리·메트릭 쿼리·파싱을 포함한 LogQL 기본 사용법, 그리고 대용량 조회를 위한 bloom filter 활용법을 다룹니다.
Continue reading »MySQL 8.0에서 서비스를 멈추지 않고 스키마를 변경하는 방법을 정리합니다. table-copy와 in-place DDL의 차이, Online DDL이 잡는 락의 범위를 짚고, DML과 DDL을 동시에 돌려 무중단 여부를 검증한 테스트까지 다룹니다.
Continue reading »