StackShareStackShare
Follow on
StackShare

Discover and share technology stacks from companies around the world.

Follow on

© 2025 StackShare. All rights reserved.

Product

  • Stacks
  • Tools
  • Feed

Company

  • About
  • Contact

Legal

  • Privacy Policy
  • Terms of Service
  1. Stackups
  2. Utilities
  3. API Tools
  4. Microservices Tools
  5. AWS App Mesh vs Dapr

AWS App Mesh vs Dapr

OverviewDecisionsComparisonAlternatives

Overview

AWS App Mesh
AWS App Mesh
Stacks23
Followers205
Votes0
Dapr
Dapr
Stacks96
Followers336
Votes9
GitHub Stars25.2K
Forks2.0K

AWS App Mesh vs Dapr: What are the differences?

Introduction

Here are the key differences between AWS App Mesh and Dapr:

  1. Managed Service vs. Open Source Framework: AWS App Mesh is a managed service provided by Amazon Web Services (AWS), while Dapr is an open-source, portable, event-driven runtime framework. AWS App Mesh is fully managed by AWS and provides a complete service mesh solution, whereas Dapr is a flexible framework that can be used with various cloud providers and platforms.

  2. Platform Independence: Dapr is designed to be platform-independent and can run on any infrastructure, including on-premises servers, virtual machines, and containers. It can also be used with different programming languages, enabling developers to build applications using their preferred language. On the other hand, AWS App Mesh is tightly integrated with the AWS ecosystem and is primarily used with AWS services, limiting its compatibility with other platforms and providers.

  3. Service Discovery: AWS App Mesh relies on AWS Cloud Map for service discovery, allowing services to dynamically register and discover other services within the mesh. In contrast, Dapr provides its own service discovery mechanism, which is based on a sidecar pattern where a sidecar container is deployed alongside each service to manage service discovery.

  4. Traffic Routing: AWS App Mesh offers advanced traffic routing capabilities, including weighted routing, HTTP path-based routing, and header-based routing. It also supports traffic splitting and canary deployments, allowing for controlled rollouts of new versions of services. Dapr provides a more lightweight traffic routing mechanism, supporting basic load balancing and routing through service invocation.

  5. Observability: AWS App Mesh provides robust observability features, including metrics, logs, and distributed tracing. It integrates with AWS X-Ray for tracing and AWS CloudWatch for monitoring and logging. Dapr also provides observability features, but the extent of monitoring and tracing capabilities may depend on the specific observability tools and platforms used in conjunction with Dapr.

  6. Security and Authentication: AWS App Mesh offers various security features, including mutual TLS authentication, fine-grained access control, and encryption in transit for service communication. Authentication and authorization can be enforced at the service mesh level. Dapr also supports security features like authentication and encryption, but as an open-source framework, the specific security implementation depends on the underlying platform or cloud provider.

In summary, AWS App Mesh is a managed service tightly integrated with the AWS ecosystem, offering advanced features for service mesh management, while Dapr is an open-source framework that provides flexibility and portability for building event-driven applications on various platforms and infrastructure.

Share your Stack

Help developers discover the tools you use. Get visibility for your team's tech choices and contribute to the community's knowledge.

View Docs
CLI (Node.js)
or
Manual

Advice on AWS App Mesh, Dapr

Mohammed
Mohammed

CTO at Famcare

Jan 16, 2020

Needs advice

One of our applications is currently migrating to AWS, and we need to make a decision between using AWS API Gateway with AWS App Mesh, or Kong API Gateway with Kuma.

Some people advise us to benefit from AWS managed services, while others raise the vendor lock issue. So, I need your advice on that, and if there is any other important factor rather than vendor locking that I must take into consideration.

38.8k views38.8k
Comments
lyc218
lyc218

Feb 21, 2020

Needs advice

Envoy proxy is widely adopted in many companies for service mesh proxy, but it utilizes BoringSSL by default. Red Hat OpenShift fork envoy branch with their own OpenSSL support, I wonder any other companies are also using envoy-openssl branch for compatibility? How about AWS App Mesh?

Any input would be much appreciated!

42.8k views42.8k
Comments

Detailed Comparison

AWS App Mesh
AWS App Mesh
Dapr
Dapr

AWS App Mesh is a service mesh based on the Envoy proxy that makes it easy to monitor and control containerized microservices. App Mesh standardizes how your microservices communicate, giving you end-to-end visibility and helping to ensure high-availability for your applications. App Mesh gives you consistent visibility and network traffic controls for every microservice in an application. You can use App Mesh with Amazon ECS (using the Amazon EC2 launch type), Amazon EKS, and Kubernetes on AWS.

It is a portable, event-driven runtime that makes it easy for developers to build resilient, stateless and stateful microservices that run on the cloud and edge and embraces the diversity of languages and developer frameworks.

-
Event-driven Pub-Sub system with pluggable providers and at-least-once semantics; Input and Output bindings with pluggable providers; State management with pluggable data stores; Consistent service-to-service discovery and invocation; Opt-in stateful models: Strong/Eventual consistency, First-write/Last-write wins; Cross platform Virtual Actors; Rate limiting; Built-in distributed tracing using Open Telemetry; Runs natively on Kubernetes using a dedicated Operator and CRDs; Supports all programming languages via HTTP and gRPC; Multi-Cloud, open components (bindings, pub-sub, state) from Azure, AWS, GCP; Runs anywhere - as a process or containerized; Lightweight (58MB binary, 4MB physical memory); Runs as a sidecar - removes the need for special SDKs or libraries; Dedicated CLI - developer friendly experience with easy debugging; Clients for Java, Dotnet, Go, Javascript and Python
Statistics
GitHub Stars
-
GitHub Stars
25.2K
GitHub Forks
-
GitHub Forks
2.0K
Stacks
23
Stacks
96
Followers
205
Followers
336
Votes
0
Votes
9
Pros & Cons
No community feedback yet
Pros
  • 3
    Manage inter-service state
  • 2
    MTLS "for free"
  • 2
    Zipkin app tracing "for free"
  • 2
    App dashboard for rapid log overview
Cons
  • 1
    Additional overhead
Integrations
Amazon EKS
Amazon EKS
Amazon EC2
Amazon EC2
Kubernetes
Kubernetes
Envoy
Envoy
Amazon EC2 Container Service
Amazon EC2 Container Service
.NET Core
.NET Core
Java
Java
Python
Python
Microsoft Azure
Microsoft Azure
Kubernetes
Kubernetes
JavaScript
JavaScript
Google Cloud Platform
Google Cloud Platform
Golang
Golang

What are some alternatives to AWS App Mesh, Dapr?

Istio

Istio

Istio is an open platform for providing a uniform way to integrate microservices, manage traffic flow across microservices, enforce policies and aggregate telemetry data. Istio's control plane provides an abstraction layer over the underlying cluster management platform, such as Kubernetes, Mesos, etc.

Azure Service Fabric

Azure Service Fabric

Azure Service Fabric is a distributed systems platform that makes it easy to package, deploy, and manage scalable and reliable microservices. Service Fabric addresses the significant challenges in developing and managing cloud apps.

Moleculer

Moleculer

It is a fault tolerant framework. It has built-in load balancer, circuit breaker, retries, timeout and bulkhead features. It is open source and free of charge project.

Express Gateway

Express Gateway

A cloud-native microservices gateway completely configurable and extensible through JavaScript/Node.js built for ALL platforms and languages. Enterprise features are FREE thanks to the power of 3K+ ExpressJS battle hardened modules.

ArangoDB Foxx

ArangoDB Foxx

It is a JavaScript framework for writing data-centric HTTP microservices that run directly inside of ArangoDB.

Zuul

Zuul

It is the front door for all requests from devices and websites to the backend of the Netflix streaming application. As an edge service application, It is built to enable dynamic routing, monitoring, resiliency, and security. Routing is an integral part of a microservice architecture.

linkerd

linkerd

linkerd is an out-of-process network stack for microservices. It functions as a transparent RPC proxy, handling everything needed to make inter-service RPC safe and sane--including load-balancing, service discovery, instrumentation, and routing.

Jersey

Jersey

It is open source, production quality, framework for developing RESTful Web Services in Java that provides support for JAX-RS APIs and serves as a JAX-RS (JSR 311 & JSR 339) Reference Implementation. It provides it’s own API that extend the JAX-RS toolkit with additional features and utilities to further simplify RESTful service and client development.

Ocelot

Ocelot

It is aimed at people using .NET running a micro services / service oriented architecture that need a unified point of entry into their system. However it will work with anything that speaks HTTP and run on any platform that ASP.NET Core supports. It manipulates the HttpRequest object into a state specified by its configuration until it reaches a request builder middleware where it creates a HttpRequestMessage object which is used to make a request to a downstream service.

Micro

Micro

Micro is a framework for cloud native development. Micro addresses the key requirements for building cloud native services. It leverages the microservices architecture pattern and provides a set of services which act as the building blocks

Related Comparisons

GitHub
Bitbucket

Bitbucket vs GitHub vs GitLab

GitHub
Bitbucket

AWS CodeCommit vs Bitbucket vs GitHub

Kubernetes
Rancher

Docker Swarm vs Kubernetes vs Rancher

gulp
Grunt

Grunt vs Webpack vs gulp

Graphite
Kibana

Grafana vs Graphite vs Kibana