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가 있습니다.
사용 방법
- Dapr 사이드카를 각 서비스에 추가합니다(Docker 컨테이너, 바이너리 또는 로컬 프로세스).
- 언어 SDK 또는 원시 HTTP/gRPC를 통해 코드에서 모든 Dapr API를 호출합니다.
- 선호하는 언어로 워크플로우를 정의합니다. Dapr이 상태를 자동으로 지속합니다.
- 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 에이전트 및 기타 분산 클라우드/엣지 애플리케이션 구축을 위한 견고한 기반이 됩니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트