Launch HN: Hatchet (YC W24) – 오픈 소스 작업 큐, 클라우드 버전 추가
요약
기존 Celery나 BullMQ 등의 한계를 극복한 새로운 오픈소스 작업 큐(Task Queue) 솔루션 Hatchet이 클라우드 버전을 공개했습니다. Hatchet은 PostgreSQL을 핵심 데이터 저장소로 사용하여, 태스크 실행의 상태 관리와 워크플로우 진행 과정을 단일 트랜잭션으로 처리함으로써 데이터 무결성과 안정성을 극대화합니다. 특히 RAG 파이프라인 오케스트레이션, 에이전트 기반 LLM 워크플로우 구축 등 복잡한 비동기 작업을 안정적으로 처리할 수 있어 개발자들에게 큰 가치를 제공합니다.
핵심 포인트
- PostgreSQL을 활용하여 태스크 실행 상태와 결과 업데이트를 단일 트랜잭션으로 관리, 데이터 손실 및 레이스 컨디션 위험 최소화.
- Fanout 워크플로우(하나의 태스크가 여러 개의 병렬 자식 태스크 트리거) 지원을 추가하여 개발자 친화적인 영속적 실행 모델 구현.
- Webhook Worker를 도입하여 HTTP 기반 트리거를 지원, Vercel 등 환경에서 타임아웃 제한 문제를 해결할 수 있도록 함.
- 오픈소스(MIT 라이선스)로 제공되며, 클라우드 자가 서비스(self-serve cloud)와 로컬 개발용 경량 버전(hatchet-lite)을 함께 출시함.
Launch HN: Hatchet (YC W24) – 오픈 소스 작업 큐, 클라우드 버전 추가
안녕하세요 HN 커뮤니티 여러분. 저희는 Hatchet(https://hatchet.run)의 Alexander와 Gabe입니다. 저희는 Python용 Celery나 Node용 BullMQ 같은 기존 도구들의 대안이 될 수 있는 모던한 작업 큐를 구축하고 있습니다. 저희 오픈 소스 레포지토리는 https://github.com/hatchet-dev/hatchet에 있으며, 100% MIT 라이선스를 따릅니다.
몇 달 전 Show HN을 진행했을 때(https://news.ycombinator.com/item?id=39643136), 저희 클라우드 버전은 초대 기반(invite-only)이었고, 오픈 소스 제공에 초점을 맞추었습니다.
오늘 저희는 누구나 플랫폼에서 작업을 생성하는 것을 시작할 수 있도록 셀프 서비스 클라우드를 출시합니다. https://cloud.onhatchet.run에서 시작할 수 있으며, 다음 자격 증명을 사용하여 데모에 접속할 수도 있습니다(사전 채워져 있어야 함):
URL: https://demo.hatchet-tools.com
이메일: hacker@news.ycombinator.com
비밀번호: HatchetDemo123!
현재 사람들은 다양한 사용 사례를 위해 Hatchet을 사용하고 있습니다: RAG 파이프라인 오케스트레이션, 사용자 알림 큐잉, 에이전트 기반 LLM 워크플로우 구축 또는 GPU에서 이미지 생성 작업 스케줄링 등입니다.
저희는 기존 도구들에 대한 좌절감과 PostgreSQL이 작업 큐에 가장 적합한 선택이라는 확신을 바탕으로 이 시스템을 구축했습니다. 많은 개발자들이 이미 자신의 스택에서 Postgres를 사용하고 있어 Hatchet을 셀프 호스팅하기가 더 쉽다는 점 외에도, Postgres에서는 작업 체인(workflows)과 같은 고차원적인 개념(higher-order concepts)을 모델링하는 것이 더 쉽습니다. 저희 시스템에서는 작업의 승인(acknowledgement), 작업 결과(task result), 그리고 고차원 모델에 대한 업데이트가 동일한 Postgres 트랜잭션(transaction)의 일부로 처리되므로, 다른 작업 큐(일반적으로 브로커를 통해 승인을 전달하고, 작업 결과를 다른 곳에 저장한 다음, 그 후에야 체인의 다음 작업을 파악하는 방식)와 비교했을 때 데이터 손실/경쟁 조건(race conditions) 위험을 크게 줄여줍니다.
또한 저희는 Celery 같은 도구들과 그것이 현대적인 Python 스택(> 3.5)에서 사용될 때 야기하는 어려움에 점점 더 좌절감을 느꼈습니다. 이러한 좌절감 목록은 여기에서 작성했습니다: https://docs.hatchet.run/blog/problems-with-celery.
Show HN 이후, 저희는 해당 게시물에서 나온 가장 일반적인 피드백 중 일부를 (부분적으로 또는 완전히) 해결했으며, 이를 여기에 정리하겠습니다:
- 가장 많이 요청된 기능은 팬아웃 워크플로우(fanout workflows)에 대한 내장 지원이었습니다. 즉, 하나의 작업이 임의의 수의 자식 작업을 병렬로 실행하도록 트리거하는 것입니다. 이전에는 DAG 실행만 지원했습니다. 저희는 이 개념을 일반화하여 자식 워크플로우(child workflows)(https://docs.hatchet.run/home/features/child-workf)를 출시했습니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 HN AI Engineering의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기