Erlang/OTP에서 영감을 얻은 Go 액터 모델 프레임워크로, 감독 기능과 네트워크 투명성을 갖춘 분산 시스템을 구축합니다.
rivet-dev/rivet
Rivet은 Pod 기반 스케줄링의 대안으로 에이전트, 워크플로, 실시간 앱을 위한 내구성 있는 상태 저장 Actor를 스케줄링하는 오픈소스 오케스트레이터입니다.
대체할 수 있는 제품:Cloudflare Durable Objects
- 스타
- 6,323
- 포크
- 280
- 열린 이슈
- 350
- 마지막 커밋
- 18시간 전
어떤 프로젝트인가요?
Rivet은 각각 내구성 있는 상태, SQLite 데이터베이스, 큐, 실시간 연결, 스케줄링 기능을 갖추고 키로 접근하는 장기 실행 프로세스인 Actor를 스케줄링합니다. 에이전트, 세션, 사용자 또는 테넌트마다 Actor를 하나씩 생성할 수 있습니다. Actor는 자체 컨테이너나 VM이 아니라 일반 Node.js, Bun 또는 Rust 워커 프로세스 안에서 실행되며, 유휴 상태가 되면 절전 상태로 전환됐다가 다음 요청이 오면 깨어납니다.
프로젝트는 타입이 지정된 클라이언트와 React hooks를 제공하는 TypeScript(RivetKit) 및 Rust SDK를 제공하므로, 별도의 런타임을 만들지 않고도 기존 패키지, 도구, 테스트를 사용할 수 있습니다. 컨트롤 플레인은 단일 Rust 바이너리로 제공되며, Postgres 또는 FoundationDB와 S3 계층형 스토리지를 사용해 자체 호스팅하거나 Rivet Cloud 또는 고객의 VPC(BYOC) 안에서 실행할 수 있습니다.
저장소에는 내구성 있는 다단계 작업을 위한 워크플로와, 신뢰할 수 없는 생성 코드에 자체 파일 시스템과 셸을 제공하는 agentOS 샌드박스도 포함되어 있습니다.
핵심 기능
- 01유휴 상태의 Actor는 절전 상태로 전환되고, 상태를 유지한 채 다음 요청에 깨어납니다
- 02Actor별 SQLite 데이터베이스 또는 S3를 사용하는 계층형 POSIX 파일 시스템
- 03실시간 상태를 위한 타입 지정 TypeScript 및 Rust SDK와 React hooks
- 04Actor에 대한 HTTP 및 WebSocket 연결, 키를 통한 Actor 간 호출
- 05컨트롤 플레인에 내장된 Cron 및 타임스탬프 기반 스케줄링
- 06OpenTelemetry 트레이스, 메트릭, 로그
활용 사례
- 재시작 후에도 상태가 유지되는 코딩 에이전트 또는 채팅 에이전트별 내구성 있는 프로세스 실행
- 각 문서나 룸에서 연결된 클라이언트에 변경 사항을 브로드캐스트하는 실시간 협업
- 자체 스토리지를 갖춘 격리된 Actor에서 생성 코드 또는 신뢰할 수 없는 코드 실행
- 기존 데이터베이스 및 API와 함께 회사 VPC 안에서 에이전트 인프라 자체 호스팅
빠른 시작
- 1
RivetKit 패키지를 설치하세요
npm install rivetkit - 2
코딩 에이전트에 에이전트 스킬을 추가하세요(선택 사항)
npx skills add rivet-dev/skills - 3
문서의 Node.js 및 Bun 백엔드 빠른 시작을 따르세요
사용 전 알아둘 점
- 콜드 스타트 12ms와 Actor당 72KB라는 수치는 독립 테스트 결과가 아니라 프로젝트 자체 벤치마크에서 나온 것입니다.
- 더 빠른 콜드 스타트 경로와 같은 일부 기능은 실험적이라고 설명되어 있습니다.
- 컨트롤 플레인을 셀프 호스팅하려면 Postgres 또는 FoundationDB를 실행하고 인프라를 직접 운영해야 합니다.
포함된 컬렉션
토픽
자주 묻는 질문
- rivet은(는) 무엇인가요?
- Rivet은 Pod 기반 스케줄링의 대안으로 에이전트, 워크플로, 실시간 앱을 위한 내구성 있는 상태 저장 Actor를 스케줄링하는 오픈소스 오케스트레이터입니다. Rivet은 각각 내구성 있는 상태, SQLite 데이터베이스, 큐, 실시간 연결, 스케줄링 기능을 갖추고 키로 접근하는 장기 실행 프로세스인 Actor를 스케줄링합니다. 에이전트, 세션, 사용자 또는 테넌트마다 Actor를 하나씩 생성할 수 있습니다. Actor는 자체 컨테이너나 VM이 아니라 일반 Node.js, Bun 또는 Rust 워커 프로세스 안에서 실행되며, 유휴 상태가 되면 절전 상태로 전환됐다가 다음 요청이 오면 깨어납니다.
- rivet은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- rivet은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- rivet은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. rivet의 마지막 커밋은 2026년 10월 22일입니다.
- rivet은(는) 어디에 사용할 수 있나요?
- 재시작 후에도 상태가 유지되는 코딩 에이전트 또는 채팅 에이전트별 내구성 있는 프로세스 실행 각 문서나 룸에서 연결된 클라이언트에 변경 사항을 브로드캐스트하는 실시간 협업 자체 스토리지를 갖춘 격리된 Actor에서 생성 코드 또는 신뢰할 수 없는 코드 실행 기존 데이터베이스 및 API와 함께 회사 VPC 안에서 에이전트 인프라 자체 호스팅
- rivet는 어떻게 설치하나요?
- RivetKit 패키지를 설치하세요: npm install rivetkit 코딩 에이전트에 에이전트 스킬을 추가하세요(선택 사항): npx skills add rivet-dev/skills 문서의 Node.js 및 Bun 백엔드 빠른 시작을 따르세요
- rivet은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/rivet-dev/rivet
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
Auth, 데이터베이스, Storage, Functions 등을 제공하는 Docker 기반 오픈소스 앱 백엔드 플랫폼
재시도와 흐름 제어를 지원하며 서버리스, 서버, 엣지에서 스텝 함수와 백그라운드 작업, AI 워크플로를 실행하는 내구성 있는 워크플로 엔진입니다.
Restate는 인프라 장애에도 견디는 내구성 있는 실행, 안정적인 메시징, 영속 상태를 갖춘 애플리케이션을 만드는 런타임입니다.
자체 서버 없이 브라우저끼리 WebRTC로 P2P 연결하는 멀티플레이어 웹 앱용 JavaScript 라이브러리입니다.
프로세스 재시작 후에도 작업을 이어가는 Pi Durable 기반 셀프 호스팅 개인 AI 에이전트