docs
dapr
docs | dapr | |
---|---|---|
7 | 80 | |
988 | 23,335 | |
0.0% | 0.7% | |
9.7 | 9.7 | |
7 days ago | 6 days ago | |
HTML | Go | |
Creative Commons Attribution 4.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
docs
-
.NET Aspire is the best way to experiment with Dapr during local development
Dapr documentation
-
Picking an architecture
I agree with the general sentiment here that you should try to keep things simple as long as possible. In addition to that, try to use frameworks such as Dapr, that allow you to postpone certain architectural decisions. Since Dapr runs everywhere where Kubernetes runs, it doesn't really matter which cloud provider you pick. Also, when it comes to pub/sub brokers, state stores, or secret stores, when using Dapr components you can easily swap those out.
-
Mechanism for managing faulty consumer in asynchronous event broadcast in microservices / modular monolith
I'm mostly familiar with orchestration type sagas, and there I usually include retries when calling services and compensation actions in case calls completely fail. It really helps if you're using a framework, such as Dapr, to do most of the heavy lifting. You can apply resiliency policies to service calls and with the latest version, there's now a Workflow API to orchestrate your services.
-
Service Mesh Considerations
One other option that is worth mentioning is Dapr. Dapr is a microservices building block that developers can use to develop microservices. There is a bit of overlap between Dapr and service meshes and the Dapr team has done a good job of comparing the two here. The biggest takeaway when comparing the two is that Dapr does not provide traffic routing/splitting. So if you need these capabilities, then yes, you will need a service mesh.
-
Virtual Actors : Dapr vs Orleans
There was a similar issue with the code examples to get/set state, so I created a GitHub issue for them.
-
Image Recognition App using GoLang | Tensorflow | WasmEdge | Dapr | Docker
It is an Image Recognition Application made using Go Language, works on a Tensorflow model and it requires Dapr and WasmEdge runtime for execution.
-
Tech Talks: Building Event-Driven Apps with Dapr in Kubernetes
Dapr Docs
dapr
-
.NET Aspire is the best way to experiment with Dapr during local development
Dapr provides a set of building blocks that abstract concepts commonly used in distributed systems. This includes secured synchronous and asynchronous communication between services, caching, workflows, resiliency, secret management and much more. Not having to implement these features yourself eliminates boilerplate, reduce complexity and allows you to focus on developing your business features.
-
Join the Diagrid Catalyst AWS Hackathon!
Diagrid Catalyst is a Developer API platform providing a brand-new approach to distributed application development. Using the Catalyst APIs, powered by the Dapr open source project, developers can overcome the complexity of rewriting common software patterns and achieve higher productivity by offloading infrastructure concerns from their code to Catalyst.
- Dapr: Microservices API
-
Interesting projects using WebAssembly
The following two examples are open-source projects maintained by Fermyon with contributions from companies like Microsoft and SUSE. The first is Spin, which allows us to use WebAssembly to create Serverless applications. The second, SpinKube, combines some of the topics I'm most excited about these days: WebAssembly and Kubernetes Operators :) The official website says, "By running applications in the Wasm abstraction layer, SpinKube offers developers a more powerful, efficient, and scalable way to optimize application delivery on Kubernetes." By the way, this post shows how to integrate SpinKube with Dapr, another technology I'm very interested in, and I should write some posts soon.
-
The Ambassador Pattern
Speaking of this has anyone had much experience with Dapr (https://dapr.io/) before?
I always thought this was a particularly interesting approach from Microsoft where they use this pattern to essentially take the complexity of micro services and instead try and keep it as simple as a normal .NET application but (and I think this is the clever part) in both a vendor and language neutral way.
But all of a sudden it means you can start removing all kinds of cruft and random SDKs from your codebase and push almost all of your interactions with the outside world into something like this .
-
Comparing Azure Functions vs Dapr on Azure Container Apps
Azure Container Apps hosting of Azure Functions is a way to host Azure Functions directly in Container Apps - additionally to App Service with and without containers. This offering also adds some Container Apps built-in capabilities like the Dapr microservices framework which would allow for mixing microservices workloads on the same environment with Functions.
-
Episode 150: myNewsWrap – SAP and Microsoft
Having containers is nice but everything (well ... nearly everything 😉) gets better with Dapr as an outstanding tool for app development in the container-based area. Here we go what might be worth a look:
-
Using DARP in production?
Anyone using or planing to use darp Distributed application platform runtime as a microservices platform? https://dapr.io/
-
Ensuring Seamless Operations: Troubleshooting and Resolving Dapr Certificate Expiry
A CNCF project, the Distributed Application Runtime (Dapr) provides APIs that simplify microservice connectivity. Whether your communication pattern is service to service invocation or pub/sub messaging, Dapr helps you write resilient and secured microservices. Essentially, it provides a new way to build microservices by using the reusable blocks implemented as sidecars.
-
Understanding the Dapr workflow engine and workflow patterns in .NET (1hr webinar)
Dapr is a runtime that implements common patterns such as pub/sub, state storage, etc. It runs as a sidecar to your app. Your app then interfaces with it using an sdk or http calls to use said patterns instead of implementing those patterns directly yourself. Seems pretty cool to me, but you can find out more at https://dapr.io/.
What are some alternatives?
dapr-wasm - A template project to demonstrate how to run WebAssembly functions as sidecar microservices in dapr
MassTransit - Distributed Application Framework for .NET
CAP - Distributed transaction solution in micro-service base on eventually consistency, also an eventbus with Outbox pattern
camel-k - Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers
Orleans.CosmosDB - Orleans providers for Azure Cosmos DB
tye - Tye is a tool that makes developing, testing, and deploying microservices and distributed applications easier. Project Tye includes a local orchestrator to make developing microservices easier and the ability to deploy microservices to Kubernetes with minimal configuration.
jaeger - CNCF Jaeger, a Distributed Tracing Platform
OpenFaaS - OpenFaaS - Serverless Functions Made Simple
cloud-dapr-demo - Demo of Dapr runtime and seamless integration of cloud providers
Nomad - Nomad is an easy-to-use, flexible, and performant workload orchestrator that can deploy a mix of microservice, batch, containerized, and non-containerized applications. Nomad is easy to operate and scale and has native Consul and Vault integrations.
zipkin - Zipkin is a distributed tracing system
NServiceBus - Build, version, and monitor better microservices with the most powerful service platform for .NET