dapr/dapr

Dapr is a portable runtime for building distributed applications across cloud and edge, combining event-driven architecture with workflow orchestration.

Dapr – 분산 앱, 워크플로우, AI 에이전트를 위한 런타임

그것이 무엇인가 – Dapr(분산 애플리케이션 런타임)은 오픈 소스 CNCF 졸업 플랫폼으로, 서비스 옆에서 사이드카로 실행됩니다. 상태 저장소, pub/sub, 서비스 호출, 액터, 워크플로우 등의 빌딩 블록 API를 제공하며, 이는 일반 HTTP 또는 gRPC를 통해 작동하고 네이티브 SDK를 통해 모든 언어에서 접근할 수 있습니다.

AI에 중요한 이유 – 현대 AI 에이전트는 더 이상 "모델을 호출하고 응답을 받는" 것만이 아닙니다. 프로덕션 에이전트는 다음이 필요합니다:

  • 지속적이고 재개 가능한 실행(충돌 시 진행 상황 손실 방지)
  • 턴 사이의 지속적인 메모리
  • 많은 마이크로서비스 또는 다른 에이전트 간의 안전하고 인증된 통신
  • LLM(Conversation API) 및 도구 호출과의 쉬운 통합
  • 규정 준수가 중요한 도메인을 위한 감사 가능하고 검증 가능한 실행 기록

Dapr은 이러한 모든 것을 재사용 가능한 프리미티브로 제공하여 개발자가 배관 작업 대신 에이전트 로직에 집중할 수 있게 합니다.

주요 기능

기능 제공 내용
워크플로우 타이머, 재시도, 하위 워크플로우, 인간 개입 이벤트를 갖춘 지속적이고 버전 관리된 다단계 프로세스. CLI 및 API로 관리.
서비스 호출 서비스 간의 안정적이고 mTLS로 보호된 RPC, 언어 비종속.
상태 관리 플러그 가능한 상태 저장소(Redis, Cosmos 등)와 간단한 get/set API.
Pub/Sub 모든 브로커(Kafka, NATS, RabbitMQ…)에서 이벤트 기반 메시징, 최소 한 번 전달.
액터 세분화된 동시성을 위한 가상 상태 저장 액터.
대화 LLM 호출을 위한 통일된 API, 프롬프트 캐싱 및 도구 호출 지원.
바인딩 외부 시스템(데이터베이스, 큐, 클라우드 서비스)에서 코드를 트리거하고 외부로 이벤트를 발행.
비밀 및 구성 안전한 비밀 검색 및 동적 구성 구독.
분산 잠금 및 암호화 조정 프리미티브와 키를 직접 다루지 않는 쉬운 암호화/복호화.
작업 일회성 또는 예약된 작업.

이 모든 것은 HTTP/gRPC로 노출되며 .NET, Java, Python, Go, JavaScript/TypeScript, Rust, C++ 및 PHP용 SDK가 있습니다.

사용 방법

  1. Dapr 사이드카를 각 서비스에 추가합니다(Docker 컨테이너, 바이너리 또는 로컬 프로세스).
  2. 언어 SDK 또는 원시 HTTP/gRPC를 통해 코드에서 모든 Dapr API를 호출합니다.
  3. 선호하는 언어로 워크플로우를 정의합니다. Dapr이 상태를 자동으로 지속합니다.
  4. AI 에이전트의 경우 Conversation API를 사용하여 LLM과 대화하고, 대화를 상태 저장소에 저장하며, 워크플로우로 다단계 추론을 조정합니다.

어디서나 실행 – 사이드카는 약 58MB 바이너리에 불과하므로 Dapr은 Kubernetes, 모든 공용 클라우드, 엣지 디바이스, VM 또는 노트북에서도 작동합니다. 환경 간 이동에 코드 변경이 필요 없습니다.

커뮤니티 및 성숙도 – Dapr은 졸업한 CNCF 프로젝트로, 많은 기업에서 프로덕션 사용 중입니다. 활발한 커뮤니티(Discord, 격주 통화, 광범위한 문서, 빠른 시작, 샘플 저장소)와 완전한 SDK 및 구성 요소 라이브러리가 있습니다.

시작하기 – README는 공식 문서(docs.dapr.io), 빠른 시작 가이드, 실습 학습을 위한 샘플 저장소를 안내합니다.


TL;DR – Dapr은 언어 비종속 런타임으로, 지속적인 워크플로우, 안전한 서비스 간 호출, 상태, pub/sub, LLM 친화적인 Conversation API를 제공하여 안정적인 AI 에이전트 및 기타 분산 클라우드/엣지 애플리케이션 구축을 위한 견고한 기반이 됩니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트