Unified APIs for building Secure and Reliable Microservices

Leverage industry best practices and focus on your application's logic.

image card
HDFC Bank

Handling millions of transactions efficiently with Dapr.

DeFacto

How DeFacto migrated to an event-driven architecture with Dapr.

At-Bay

How At-Bay improved operations with Dapr.

Bosch

Bosch’s Residential IoT Services GmbH (RIoT) uses Dapr actors and Java SDK to build a large scale smart home IoT solution.

Build event driven apps faster

Dapr is set of unified APIs with built-in best practices to build cloud-native event-driven applications. Dapr increases your developer productivity by 20-40% with out-of-the-box features such as workflow, pub/sub, state management, secret stores, configuration stores, bindings, actors and distributed lock and covers cross-cutting concerns including security, observability and resiliency.

Automate your business processes

Dapr workflow is simplifying complex, stateful coordination requirements in event-driven applications.

Workflow makes it easy to implement orchestration patterns such as task chaining, fan-out/fan-in, monitor, and external system interaction. Workflow can be combined with the other Dapr APIs so developers can automate business processes quickly.

image describing Automate your business processes

Best practices to build secure and resilient applications

Modern cloud-native applications are inherently async and react to events. Dapr enables the creation of event-driven applications by providing a unified set of APIs across 100+ cloud-native back-ends and brokers. It offers guaranteed message delivery, built-in resiliency, observability and security.

image describing Best practices to build secure and resilient applications

Integrate with the infrastructure of your choice

Dapr's component model decouples technology choices from your code making it agnostic to hosting environments and enabling application portability. Dapr runs as a sidecar wherever your application runs whether hosted on Kubernetes, VMs, deployed on the cloud, on-premises or on the edge.

image describing Integrate with the infrastructure of your choice

Incrementally adopt

Dapr can be introduced into an existing architecture incrementally. Dapr applications can call non-Dapr endpoints while still having the Dapr benefits of having resiliency policies, observability, security access through scoping and more.

image describing Incrementally adopt

Unified APIs

service invocation

Service invocation enables applications to communicate with each other through well-known endpoints in the form of http or gRPC messages. Dapr provides an endpoint that acts as a combination of a reverse proxy with built-in service discovery, while leveraging built-in distributed tracing and error handling.

> Read more about service invocation

publish subscribe

Pub/Sub is a loosely coupled messaging pattern where senders (or publishers) publish messages to a topic, to which subscribers subscribe. Dapr supports the pub/sub pattern between applications.

> Read more about publish subscribe

state management

Application state is anything an application wants to preserve beyond a single session. Dapr provides a key/value-based state and query APIs with pluggable state stores for persistence.

> Read more about state management

actors

An actor is an isolated, independent unit of compute and state with single-threaded execution. Dapr provides an actor implementation based on the virtual actor pattern which provides a single-threaded programming model and where actors are garbage collected when not in use.

> Read more about actors

workflows

The Workflow API enables you to define long running, persistent processes or data flows that span multiple microservices using Dapr workflows or workflow components. The Workflow API can be combined with other Dapr API building blocks.

> Read more about workflows

secrets

Dapr provides a secrets building block API and integrates with secret stores such as public cloud stores, local stores and Kubernetes to store the secrets. Services can call the secrets API to retrieve secrets, for example to get a connection string to a database.

> Read more about secrets

configuration

The Configuration API enables you to retrieve and subscribe to application configuration items for supported configuration stores. This enables an application to retrieve specific configuration information, for example, at start up or when configuration changes are made in the store.

> Read more about configuration

bindings

A binding provides a bi-directional connection to an external cloud/on-premise service or system. Dapr allows you to invoke the external service through the Dapr binding API, and it allows your application to be triggered by events sent by the connected service.

> Read more about bindings

distributed lock

The distributed lock API enables you to take a lock on a resource so that multiple instances of an application can access the resource without conflicts and provide consistency guarantees.

> Read more about distributed lock

Cross Cutting Concerns

security

Dapr provides end-to-end security with the service invocation API, with the ability to authenticate an application with Dapr and set endpoint access policies. For pub/sub components, you can limit which topic types and applications are allowed to publish and subscribe to specific topics.

> Read more about security

observability

Dapr can be configured to emit tracing data using the widely adopted protocols of Open Telemetry (OTEL) and Zipkin. This makes it easily integrated with multiple observability tools.

> Read more about observability

resiliency

Dapr provides a capability for defining and applying fault tolerance resiliency policies to your application. You can define policies for following resiliency patterns: timeouts, retries/back-offs, circuit breakers. These policies can be applied to any Dapr API calls when calling components with a resiliency spec.

> Read more about resiliency

Trusted and Adopted by

IBM logo
Zeiss logo
NASA logo
Intel logo
Zscaler logo
Alibaba logo
Bosch logo
Microsoft logo
Wortell logo
Fujitsu logo
HDFC Bank logo
DeFactor logo
Roadwork logo
Auto navi logo
Legentic logo
At Bay logo
Man group logo

Watch a Quick Introduction to Dapr