AI Briefing

Honker - SQLite에 Postgres NOTIFY/LISTEN 시맨틱을 더하는 확장

·2026.04.25 04:44

SQLite에서 Postgres식 NOTIFY/LISTEN과 durable queue를 제공하는 확장이 공개됐다.

SQLite loadable extension인 Honker가 공개됐다. 같은 .db 파일 안에서 durable pub/sub, 작업 큐, 이벤트 스트림을 처리해 클라이언트 폴링이나 별도 daemon·broker 없이 비동기 처리를 묶을 수 있다.

핵심 동작은 모두 트랜잭션 내부에서 기록된다. notify(), stream(), queue()가 비즈니스 쓰기와 함께 커밋되거나 함께 롤백돼 dual-write 문제를 줄인다.

  • 프로세스 간 깨우기는 PRAGMA data_version1ms마다 확인하는 방식으로 구현했다.
  • 큐는 retry, priority, delayed execution, dead-letter, scheduler, named lock, rate limiting 을 지원한다.
  • 스트림은 소비자별 오프셋을 저장해 at-least-once 전달을 제공한다.
  • enqueue 결과를 기다리는 wait_result() 같은 선택적 결과 저장도 지원한다.

바인딩은 Rust 기반 온디스크 레이아웃 위에 Python, Node, Bun, Ruby, Go, Elixir, C++로 제공된다. ORM이 소유한 SQLite 연결 안에서도 동작하도록 SQLAlchemy, Django, Drizzle, Kysely, sqlx, GORM, ActiveRecord, Ecto 연동 가이드도 포함했다.

다만 API는 아직 Experimental 상태다. 또 task pipeline, multi-writer replication, DAG workflow orchestration 은 의도적으로 제외했다. SQLite를 주 저장소로 쓰는 애플리케이션에는 유용하지만, 이미 Postgres를 운영 중이라면 pg_notify, pg-boss, Oban이 더 적합하다고 밝힌다.

이 요약은 원문 이해를 돕기 위한 큐레이션입니다. 저작권은 원저작자에게 있으며, 정확한 내용과 맥락은 원문을 확인하세요.

요약 오류, 출처 표기 문제, 삭제 요청은 문의 · 건의로 알려주세요.