본문으로 건너뛰기

글

상태 API를 호출해야 갱신되는 메트릭 고치기: ACOR V3의 Prometheus 수집

상태 API를 호출해야 갱신되던 ACOR V3 메트릭을 Prometheus Collector가 수집 시점에 읽도록 바꾸고 HTTP와 gRPC를 같은 상태 소스에 연결한 과정을 다룬다.

더보기 →

2026년 10월 5일

검색 결과를 안전하게 고치기: ACOR의 Unicode 마스킹과 자원 제한

ACOR의 Scan, MaskText, ReplaceText가 소문자 변환 뒤에도 원문 바이트 위치를 보존하고 겹친 매칭과 결과 수·작업량 제한을 처리하는 방법을 설명한다.

더보기 →

2026년 10월 5일

SQS는 메시지 배열보다 복잡하다: 가시성 타임아웃과 DLQ 재처리

DevCloud SQS가 가시성 타임아웃, 수신 횟수, 수신 핸들로 메시지 수명 주기를 관리하고 DLQ 이동과 재처리, FIFO 중복 제거를 다루는 방법을 설명한다.

더보기 →

2026년 10월 5일

GET이 빠른데 서버는 느리다: KVS의 fsync와 Raft 대기열 측정

KVS를 함수 호출, RESP 왕복, 200개 연결 부하로 나눠 측정해 fsync를 포함한 쓰기 3.75ms가 응답 시간 758ms가 되는 이유와 Raft 대기열의 영향을 분석한다.

더보기 →

2026년 10월 5일

DynamoDB 표현식을 직접 해석하기: 토큰화부터 조건부 쓰기까지

DevCloud가 DynamoDB FilterExpression과 ConditionExpression을 토큰화, 이름·값 치환, 재귀 하강 파싱, 타입 보존 비교로 평가하는 방법을 설명한다.

더보기 →

2026년 10월 5일

v1이라고 말하는 비용: 세 Go 프로젝트에서 호환성 약속을 기계로 지키는 법

ACOR, KVS, DevCloud를 v1으로 올리며 retract로 유령 버전을 회수하고 공개 API 목록, 데이터 포맷, 설정 호환성을 CI로 검사한 방법을 정리한다.

더보기 →

2026년 10월 4일

KVS에 Redis 프로토콜 붙이기: RESP2 서버와 Lua 스크립팅

KVS에 RESP2 서버와 Lua 스크립팅을 붙이며 정한 리스너 기본값, 길이를 믿지 않는 파싱, SCAN 커서, 원자성과 타임아웃, 샌드박스를 설명한다.

더보기 →

2026년 10월 3일

KVS 내구성과 클러스터링: Append Log, Raft, 그리고 4시간 soak test

KVS에 append log로 단일 노드 내구성을, Raft로 클러스터링을 더한 과정과 보장 범위, 4시간 soak test에서 찾은 하네스 버그를 정리한다.

더보기 →

2026년 10월 3일

ACOR 스키마 V2: Redis 키 99%를 줄이고 V1에서 안전하게 옮기기

ACOR 스키마 V2가 해시와 Lua 스크립트로 Redis 키를 컬렉션당 3개로 줄인 설계, V1 마이그레이션 API, 롤백 주의사항과 V1 은퇴 과정을 정리한다.

더보기 →

2026년 10월 2일

ACOR V3: 버전이 있는 사전, 스냅샷, 그리고 100만 키워드

100만 키워드 사전을 위한 ACOR V3의 버전 있는 사전, 버킷·청크·매니페스트 저장 구조, 스냅샷과 샤딩, 되돌린 delta 검색과 측정 결과를 정리한다.

더보기 →

2026년 10월 2일