hatchet-dev/hatchet
🪓 An orchestration engine for background tasks, AI agents, and durable workflows
Hatchet – 백그라운드 작업, AI 에이전트, 내구성 있는 워크플로우를 위한 오케스트레이션 엔진
무엇인가요 – Hatchet는 대규모 비동기 작업을 실행, 스케줄링, 모니터링할 수 있는 오픈소스 플랫폼입니다. 단순한 '발사 후 잊기' 작업부터 복잡하고 장시간 실행되는 AI 에이전트 파이프라인까지 어떤 것도 구동할 수 있는 내구성 있는 작업 큐/워크플로우 엔진으로 위치 지정됩니다.
왜 중요한가요 – 많은 AI 애플리케이션은 신뢰할 수 있는 백그라운드 처리가 필요합니다 (예: 모델 추론 워커, 데이터 전처리 파이프라인, 다단계 LLM 에이전트 오케스트레이션). 기존 큐(예: Celery, BullMQ)는 속도를 위해 내구성을 희생하지만, Temporal과 같은 워크플로우 시스템은 내구성은 제공하지만 무거운 편입니다. Hatchet는 두 가지를 결합하려는 목표를 가지고 있습니다: PostgreSQL 기반의 내구성 레이어와 풍부한 스케줄링, 라우팅, 관찰 기능을 갖추되, 자가 호스팅에 적합한 가벼운 설계를 유지합니다.
핵심 기능 (README에 기술된 내용)
| 영역 | 기능 |
|---|---|
| 백그라운드 작업 | 단일 실행 함수, 발사 후 잊기 또는 발사 후 대기, cron 및 스케줄된 실행, 지수 백오프를 통한 재시도, 워커 레이블 라우팅, 이벤트/웹훅 트리거 |
| 워크플로우 / 오케스트레이션 | 충돌 후에도 유지되는 내구성 작업, 데이터 파이프라인용 DAG 지원, 내구성 있는 슬립 또는 이벤트 대기로 인한 내장 일시정지/재개 |
| 스케일링 및 제어 | 우선순위 큐, 동적 레이트 제한, 동시성 정책(공정 스케줄링), 워커 슬롯으로 워커당 부하 제한 |
| 관찰성 (Observability) | 실시간 웹 UI, 알림, 로그, OpenTelemetry 통합, Prometheus 메트릭, 역할 기반 멀티테넌트 뷰 |
| 배포 옵션 | 자동 스케일링, 멀티리전, SSO를 갖춘 마ネ지드 SaaS (Hatchet Cloud) 또는 PostgreSQL을 영구 저장소로 사용하는 Docker/CLI를 통한 자가 호스팅 |
| 언어 SDK | 공식 클라이언트 라이브러리: Python, TypeScript, Go, Ruby (README에는 Go 참조 배지와 NPM 패키지 링크 포함) |
일반적인 사용 사례
- AI 에이전트 파이프라인 – 각 단계가 충돌 후 재시도 또는 재개가 보장되도록 LLM 호출, 도구 실행, 외부 API 요청을 연결.
- 데이터 처리 작업 – 매일 밤 ETL을 스케줄링하고, 원시 데이터를 변환하는 DAG를 실행하며, 디버깅을 위해 전체 실행 이력을 유지.
- 웹 앱 백그라운드 작업 – 이메일 전송, 이미지 처리, 웹훅 처리를 신뢰할 수 있는 큐로 오프로드하고, UI에서 모니터링 가능하게 함.
- 레이트 제한 통합 – 제3자 API 호출 시 사용자 또는 서비스 단위의 레이트 제한을 Hatchet의 동적 레이트 제한 기능으로 강제.
시작하기 (README의 빠른 시작 흐름)
- 호스팅 서비스 시도 –
cloud.hatchet.run에서 가입하여 완전히 배포된 인스턴스를 확인. - 로컬에서 실행 – Hatchet CLI 설치 (macOS, Linux, WSL 지원), Docker를 다운로드한 후 서버 시작:
curl -fsSL https://install.hatchet.run/install.sh | bash hatchet --version hatchet server start - 작업 작성 – 지원되는 SDK 중 하나를 사용해 함수를 정의하고 Hatchet에 등록.
- 작업 제출 – SDK 또는 웹훅/이벤트를 통해 작업을 큐에 추가.
- 모니터링 – 로컬 서버가 제공하는 실시간 UI를 열어 실행 상태, 로그, 메트릭을 확인.
완전한 자가 호스팅 문서와 심화 예제는 공식 문서에 있습니다.
커뮤니티 및 지원
- Discord – 실시간 도움과 논의의 주요 장소.
- GitHub Issues & Discussions – 버그 제보 및 장문 기술 논의에 사용.
- 이메일 – 클라우드 관련 지원 (청구, 데이터 삭제 등)에 사용.
관련 도구와의 차이점 (README 비교 요약)
- Temporal/DBOS와 비교 – Hatchet는 유사한 내구성 워크플로우 세미antics를 제공하지만, 관찰성, 레이트 제한, 멀티테넌트 UI를 기본 제공.
- Celery/BullMQ와 비교 – 내구성(완전한 실행 이력)과 풍부한 라우팅/우선순위 기능을 추가하지만, 리소스 사용량이 다소 높음.
- Airflow/Prefect/Dagster와 비교 – 데이터 엔지니어 중심의 ETL이 아닌 고처리량 애플리케이션 워크로드에 초점. 커스텀 통합을 지원하고 낮은 지연 시간을 제공.
TL;DR
Hatchet는 신뢰할 수 있는 백그라운드 처리와 AI 에이전트 워크플로우를 위한 오픈소스이며, PostgreSQL을 백엔드로 사용하는 오케스트레이션 플랫폼입니다. 내구성 있는 작업 실행, DAG 스타일 파이프라인, 고급 라우팅, 내장된 관찰성, SaaS 및 자가 호스팅 배포 옵션을 제공하며, Python, TypeScript, Go, Ruby용 SDK를 갖추고 있습니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트