작은 팀을 위한 가벼운 작업 대기열 Ezra
Ezra는 작은 웹·앱 서비스에서 을 다루기 위한 가벼운 이다. Kafka 같은 대형 시스템은 서버 구성과 운영이 무거워서, 작은 팀이나 는 작업을 메모리에만 쌓는 방식으로 타협하는 일이 많다. Ezra는 그 중간을 목표로 한다.
하나의 실행 파일로 돌고, 하나의 파일에 작업을 저장한다. 그래서 서버가 꺼지거나 프로그램이 멈춰도 작업을 다시 확인하고 복구하기 쉽다. Elixir 기반이라 작업별 장애 분리와 충돌 복구를 제공한다.
저장된 작업은 브라우저로 ezra.db 파일을 열어 직접 볼 수 있다. 별도 전용 클라이언트 라이브러리 없이 Redis Streams 통신 방식을 쓰기 때문에, 여러 의 기존 Redis 클라이언트로 바로 연결할 수 있다.
핵심 포인트
- Kafka 같은 대형 보다 설치와 운영을 가볍게 하는 것이 목표다.
- 하나의 실행 파일과 하나의 파일로 동작한다.
- 작업이 파일에 남기 때문에 메모리 기반 대기열보다 복구와 확인이 쉽다.
- Redis Streams 통신 방식을 사용해 기존 Redis 클라이언트를 그대로 쓸 수 있다.
- 작은 팀, 개인 개발자, 초기 웹·앱 서비스의 처리에 맞춘 도구다.