{"id":80049,"date":"2020-04-29T09:00:35","date_gmt":"2020-04-29T16:00:35","guid":{"rendered":""},"modified":"2023-12-29T14:24:38","modified_gmt":"2023-12-29T22:24:38","slug":"distributed-application-runtime-dapr-growth-community-update","status":"publish","type":"post","link":"https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/","title":{"rendered":"How Distributed Application Runtime (Dapr) has grown since its announcement"},"content":{"rendered":"\n<p>Since the <a href=\"https:\/\/cloudblogs.microsoft.com\/opensource\/2019\/10\/16\/announcing-dapr-open-source-project-build-microservice-applications\/\" target=\"_blank\" rel=\"noopener noreferrer\">October 2019 announcement<\/a> of the Distributed Application Runtime (<a href=\"https:\/\/dapr.io\/\" target=\"_blank\" rel=\"noopener noreferrer\">Dapr<\/a>), we have seen a tremendous response and the emergence of an engaged Dapr community. Over the past six months, more than 120 contributors have jumped on board and participated in the effort to build and extend Dapr through the <a href=\"https:\/\/github.com\/dapr\/\" target=\"_blank\" rel=\"noopener noreferrer\">GitHub repos<\/a> \u2013 opening issues, offering feature proposals, taking part in discussions, and making more than 350 distinct code contributions. This community engagement has demonstrated that Dapr enables developers from all backgrounds to solve some of the toughest challenges when developing distributed applications. We are grateful for the engagement and participation from the community helping us make Dapr better.<\/p>\n\n\n\n<p>On top of the community response, we have also been busy working with customers around the world and from different industries to use Dapr for developing business-critical workloads. These customer engagements have been a tremendous source of feedback and participation, helping shape the roadmap for Dapr and putting Dapr on a path towards a stable v1.0 release. In future blog posts, we\u2019ll share some of these real-world scenarios where Dapr is helping companies build their future applications.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"what-is-dapr\">What is Dapr?<\/h2>\n\n\n\n<p>Dapr is an event-driven, portable runtime for building microservices on cloud and edge and embraces the diversity of languages and developer frameworks. Dapr codifies best practices for building distributed applications and at its core are API abstractions that provide common capabilities needed to build microservices, including state management, service invocation, pub\/sub messaging, secrets management, and others.<\/p>\n\n\n\n<p>Each capability is abstracted through a \u201cBuilding Block\u201d that defines a simple and consistent API decoupled from the technology chosen to implement it through the use of pluggable components. This best practice of decoupling frees developers from the burden of integrating and having a deep understanding of the underlying technologies they use. The use of building blocks also allows swapping implementations when the application is deployed in different hosting environments or when needs change as the application evolves without affecting your code. Developers are free to use all, a few, or even just one building block as needed.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2020\/04\/dapr-overview-rust.png\" alt=\"a screenshot of a cell phone\" \/><\/figure>\n\n\n\n<p>Since Dapr itself provides both HTTP REST or gRPC APIs, applications using Dapr are portable and can be written in any language. Furthermore, Dapr runs as a sidecar to the application so a developer using Dapr simply sends a call to the Dapr sidecar and Dapr takes care of the rest. Since Dapr is a process or container that runs alongside the application it can run in any environment including a local dev machine (running Linux, Mac, or Windows), a Kubernetes cluster, an ARM edge device, or any other compute infrastructure. Dapr is also not limited to either on-premises or cloud environments \u2013 it can run alongside any application, written in any language, deployed to any environment.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>To learn more about how Dapr read this overview.<\/li>\n\n\n\n<li>To try it yourself, see Getting started with Dapr.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"dapr-evolution\">Dapr evolution<\/h2>\n\n\n\n<p>Dapr has evolved considerably in the five versions <a href=\"https:\/\/github.com\/dapr\/dapr\/releases\/\">released<\/a> since October 2019. These are some of the highlights made in the past six months:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"more-building-blocks-more-components\">More building blocks, more components<\/h3>\n\n\n\n<p><strong>Secrets building block<\/strong> &#8211; The first example of a community-driven addition to Dapr is the introduction of the Secrets building block which enables developers to retrieve secrets from secret stores that can then be used to authenticate to other resources, such as database access. The secrets building block takes away the complexity of authentication and secret retrieval with the store and turns this into a local API call. Currently supported secret stores include, HashiCorp Vault, Azure Key Vault, AWS Secret Manager, GCP Secret Manager, and Kubernetes.<\/p>\n\n\n\n<p><strong>More components<\/strong> &#8211; In addition, there have been many contributions of components, extending Dapr\u2019s support for commonly used technologies across all building blocks. For example, Dapr was launched with support for two state stores (Redis and Azure Cosmos DB) and since has added components for a total of 16 different state stores, including Memcached, MongoDB, AWS DynamoDB, among others. To explore more components, see the <a href=\"https:\/\/github.com\/dapr\/components-contrib\">components contribution GitHub repo<\/a>.<\/p>\n\n\n<figure class=\"wp-block-image alignnone attachment-full size-full webp-format\"><img decoding=\"async\" src=\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2020\/04\/Dapr2.webp\" alt=\"Dapr sidecars running for each service with pluggable components used by its API building blocks\" class=\"wp-image-80052 webp-format\" srcset=\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2020\/04\/Dapr2.webp 1280w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2020\/04\/Dapr2-300x169.webp 300w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2020\/04\/Dapr2-1024x576.webp 1024w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2020\/04\/Dapr2-768x432.webp 768w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2020\/04\/Dapr2-330x186.webp 330w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2020\/04\/Dapr2-800x450.webp 800w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2020\/04\/Dapr2-400x225.webp 400w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2020\/04\/Dapr2-235x132.webp 235w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2020\/04\/Dapr2-960x540.webp 960w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2020\/04\/Dapr2-650x366.jpg 650w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2020\/04\/Dapr2-450x253.jpg 450w\" data-orig-src=\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2020\/04\/Dapr2.jpg\" data-orig-srcset=\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2020\/04\/Dapr2.jpg 1280w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2020\/04\/Dapr2-300x169.jpg 300w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2020\/04\/Dapr2-1024x576.jpg 1024w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2020\/04\/Dapr2-768x432.jpg 768w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2020\/04\/Dapr2-330x186.jpg 330w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2020\/04\/Dapr2-800x450.jpg 800w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2020\/04\/Dapr2-400x225.jpg 400w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2020\/04\/Dapr2-235x132.jpg 235w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2020\/04\/Dapr2-960x540.jpg 960w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2020\/04\/Dapr2-650x366.jpg 650w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2020\/04\/Dapr2-450x253.jpg 450w\"><figcaption class=\"wp-element-caption\">Dapr sidecars running for each service with pluggable components used by its API building blocks<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"extended-developer-tools-support\">Extended developer tools support<\/h3>\n\n\n\n<p><strong>SDKs <\/strong>&#8211; While Dapr is independent of any programming language, it can be easily integrated into applications with language-specific SDKs. As we see more developers using Dapr, our investment in these SDKs to help streamline Dapr integration has increased. Dapr offers SDKs for JavaScript, Python, Java, .NET, Go, as well as recently added Rust and C++. In addition, based on community feedback many improvements have been added into the Java SDK, included virtual actors, typed classes, and integration with the Spring Boot web framework. For .NET there have also been improvements to the types classes and integration with ASP.NET Core web framework. Similar support is planned for the other SDKs as part of the future road map.<\/p>\n\n\n\n<p><strong>Visual Studio Code extension<\/strong> &#8211; Being able to develop applications on your local machine without any cloud dependency is important for productivity and cost and is a key goal of Dapr. The Dapr Visual Studio Code (VS Code) preview extension helps developers debug applications using Dapr, interact with the Dapr runtime, and combines with the Dapr CLI. You can find the extension in the <a href=\"https:\/\/marketplace.visualstudio.com\/items?itemName=ms-azuretools.vscode-dapr\">Visual Studio Marketplace<\/a>.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2020\/04\/Dapr3.jpg\" alt=\"Visual Studio Code extension\" \/><\/figure>\n\n\n\n<p><strong>Dapr dashboard <\/strong>\u2013 This <a href=\"https:\/\/github.com\/dapr\/dashboard\">Dapr dashboard<\/a> is a web UI that helps you visualize information about Dapr instances running on your local machine or on Kubernetes.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2020\/04\/Dapr4-2.jpg\" alt=\"Dapr dashboard\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"increased-security\">Increased security<\/h3>\n\n\n\n<p>Making sure that messages cannot be sniffed or tampered with in a distributed application is vital to prevent any malicious behavior. Dapr provides end-to-end secure encryption via mutual TLS. This includes encryption of network traffic between the sidecars and from every sidecar to the Dapr control plane. Mutual TLS is turned on by default for any application using Dapr and is configurable to rollover certificates on a frequent basis, for example, every hour. Users can bring their own certificates or use the built-in certificate authority Dapr provides to ease certificate generation and management. Learn more about Dapr security features.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"observability\">Observability<\/h3>\n\n\n\n<p>As the Dapr sidecars run alongside services, it offers advanced observability capabilities including tracing, logging, and metrics collection. Dapr currently uses the Open Census standard and is moving to the <a href=\"https:\/\/opentelemetry.io\/\">Open Telemetry<\/a> standard as it moves to a stable version. The adoption of standards, where possible, is a key goal of Dapr. For example, all pub\/sub events also conform to the <a href=\"https:\/\/cloudevents.io\/\">v1.0 Cloud Events<\/a> specification<\/p>\n\n\n\n<p><strong>Tracing<\/strong> \u2013 Tracing provides visibility of the calls between your services to create an application map and help diagnose issues in production. Dapr uses middleware to intercept traffic and adds correlation-IDs to enable distributed tracing using <a href=\"https:\/\/cloudblogs.microsoft.com\/opensource\/2019\/12\/11\/w3c-microsoft-trace-context-specification-proposed-recommendation-status\/\"><em>W3C Trace Context<\/em><\/a>. Since Dapr integrates at the application level it enables asynchronous tracing on top of synchronous tracing meaning, for example, intercommunication via pub\/sub can be traced. Furthermore, tracing is handled by the Dapr sidecar, so no code changes are required to instrument an application.<\/p>\n\n\n\n<p><strong>Metrics<\/strong> \u2013 Metrics provide visibility into call latency times between services and resource usage. Dapr provides metric collection for both Dapr services (sidecar and the Dapr control plane system services), as well as the user application services. Metrics collected include CPU and memory usage, sidecar injection failures, request error rates, and many others. Dapr allows easy integrations with technologies such as Prometheus or Azure Application Insights so users can easily set up metric visualization. See how to setup Dapr with Prometheus and Grafana as an example.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"what-s-next-on-the-roadmap\">What\u2019s next on the roadmap?<\/h2>\n\n\n\n<p>As Dapr matures, the focus of the upcoming work is towards the v1.0 release, getting Dapr out of preview and to production quality. This includes finalizing APIs, making stability improvements including long-running tests, extending end-to-end testing, performance testing infrastructure including releasing benchmark numbers, external security audits and threat model analysis, and taking contributions from the community.<\/p>\n\n\n\n<p>To ensure that we are confident in getting to stable v1.0 release, we are working closely with several companies to take Dapr into production, deployed into a number of different environments, and with a diverse set of developer frameworks, including .NET, Go, Java, C++, Node.js, and others.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"join-the-dapr-community\">Join the Dapr community<\/h2>\n\n\n\n<p>We\u2019d love for you to try out Dapr for yourself and become a member of the Dapr community. You can get involved in many ways, including:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Explore the GitHub <a href=\"https:\/\/github.com\/dapr\/\">repos<\/a>. Read the docs, comment on issues or open new ones, and contribute through pull requests. Look for issues labeled as \u201cgood first issue\u201d to start with, for example, in the <a href=\"https:\/\/github.com\/dapr\/dapr\/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22\">dapr\/dapr<\/a> or the <a href=\"https:\/\/github.com\/dapr\/components-contrib\/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22\">dapr\/components-contrib<\/a>.<\/li>\n\n\n\n<li>Ask questions and join the discussions in the Dapr community <a href=\"http:\/\/gitter.im\/dapr\">Gitter channel<\/a>, follow <a href=\"https:\/\/twitter.com\/daprdev\/\">@daprdev<\/a> on Twitter, or join the <a href=\"https:\/\/github.com\/dapr\/dapr\/blob\/master\/README.md#community\">community calls<\/a> held every two weeks (or <a href=\"http:\/\/aka.ms\/dapr-recordings\">view recordings of previous calls<\/a>).<\/li>\n<\/ul>\n\n\n\n<p>It\u2019s an exciting time to be a developer in the era of microservice development and we are excited to have you take part in the Dapr journey.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Since the October 2019 announcement of the Distributed Application Runtime (Dapr), we have seen a tremendous response and the emergence of an engaged Dapr community.<\/p>\n","protected":false},"author":5562,"featured_media":95482,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"msxcm_post_with_no_image":false,"ep_exclude_from_search":false,"_classifai_error":"","_classifai_text_to_speech_error":"","footnotes":""},"post_tag":[2271,723,2272],"content-type":[346,361],"topic":[2240,2241,2242],"programming-languages":[],"coauthors":[717,720,714],"class_list":["post-80049","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","tag-community-partners","tag-dapr","tag-microsoft","content-type-news","content-type-project-updates","topic-application-development","topic-cloud","topic-containers","review-flag-1593580428-734","review-flag-1593580419-521","review-flag-free-1593619513-693","review-flag-new-1593580248-669","review-flag-sprin-1593580746-499"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>How Distributed Application Runtime (Dapr) has grown since its announcement | Microsoft Open Source Blog<\/title>\n<meta name=\"description\" content=\"Dapr enables developers from all backgrounds to solve some of the toughest challenges when developing distributed applications. We are grateful for the engagement and participation from the community helping us make Dapr better.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How Distributed Application Runtime (Dapr) has grown since its announcement | Microsoft Open Source Blog\" \/>\n<meta property=\"og:description\" content=\"Dapr enables developers from all backgrounds to solve some of the toughest challenges when developing distributed applications. We are grateful for the engagement and participation from the community helping us make Dapr better.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/\" \/>\n<meta property=\"og:site_name\" content=\"Microsoft Open Source Blog\" \/>\n<meta property=\"article:published_time\" content=\"2020-04-29T16:00:35+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-12-29T22:24:38+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/MSC24-Japan-business-Getty-1024531730-rgb.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1170\" \/>\n\t<meta property=\"og:image:height\" content=\"640\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Mark Fussell, Yaron Schneider, Ori Zohar\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@OpenAtMicrosoft\" \/>\n<meta name=\"twitter:site\" content=\"@OpenAtMicrosoft\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Mark Fussell, Yaron Schneider, Ori Zohar\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 min read\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/\"},\"author\":[{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/author\/mark-fussell\/\",\"@type\":\"Person\",\"@name\":\"Mark Fussell\"},{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/author\/yaron-schneider\/\",\"@type\":\"Person\",\"@name\":\"Yaron Schneider\"},{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/author\/ori-zohar\/\",\"@type\":\"Person\",\"@name\":\"Ori Zohar\"}],\"headline\":\"How Distributed Application Runtime (Dapr) has grown since its announcement\",\"datePublished\":\"2020-04-29T16:00:35+00:00\",\"dateModified\":\"2023-12-29T22:24:38+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/\"},\"wordCount\":1475,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/MSC24-Japan-business-Getty-1024531730-rgb.webp\",\"keywords\":[\"Community\/partners\",\"Dapr\",\"Microsoft\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/\",\"url\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/\",\"name\":\"How Distributed Application Runtime (Dapr) has grown since its announcement | Microsoft Open Source Blog\",\"isPartOf\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/MSC24-Japan-business-Getty-1024531730-rgb.webp\",\"datePublished\":\"2020-04-29T16:00:35+00:00\",\"dateModified\":\"2023-12-29T22:24:38+00:00\",\"description\":\"Dapr enables developers from all backgrounds to solve some of the toughest challenges when developing distributed applications. We are grateful for the engagement and participation from the community helping us make Dapr better.\",\"breadcrumb\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/#primaryimage\",\"url\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/MSC24-Japan-business-Getty-1024531730-rgb.webp\",\"contentUrl\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/MSC24-Japan-business-Getty-1024531730-rgb.webp\",\"width\":1170,\"height\":640},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/opensource.microsoft.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How Distributed Application Runtime (Dapr) has grown since its announcement\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#website\",\"url\":\"https:\/\/opensource.microsoft.com\/blog\/\",\"name\":\"Microsoft Open Source Blog\",\"description\":\"Open dialogue about openness at Microsoft \u2013 open source, standards, interoperability\",\"publisher\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/opensource.microsoft.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#organization\",\"name\":\"Microsoft Open Source Blog\",\"url\":\"https:\/\/opensource.microsoft.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2019\/08\/Microsoft-Logo.png\",\"contentUrl\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2019\/08\/Microsoft-Logo.png\",\"width\":259,\"height\":194,\"caption\":\"Microsoft Open Source Blog\"},\"image\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/x.com\/OpenAtMicrosoft\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How Distributed Application Runtime (Dapr) has grown since its announcement | Microsoft Open Source Blog","description":"Dapr enables developers from all backgrounds to solve some of the toughest challenges when developing distributed applications. We are grateful for the engagement and participation from the community helping us make Dapr better.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/","og_locale":"en_US","og_type":"article","og_title":"How Distributed Application Runtime (Dapr) has grown since its announcement | Microsoft Open Source Blog","og_description":"Dapr enables developers from all backgrounds to solve some of the toughest challenges when developing distributed applications. We are grateful for the engagement and participation from the community helping us make Dapr better.","og_url":"https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/","og_site_name":"Microsoft Open Source Blog","article_published_time":"2020-04-29T16:00:35+00:00","article_modified_time":"2023-12-29T22:24:38+00:00","og_image":[{"width":1170,"height":640,"url":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/MSC24-Japan-business-Getty-1024531730-rgb.png","type":"image\/png"}],"author":"Mark Fussell, Yaron Schneider, Ori Zohar","twitter_card":"summary_large_image","twitter_creator":"@OpenAtMicrosoft","twitter_site":"@OpenAtMicrosoft","twitter_misc":{"Written by":"Mark Fussell, Yaron Schneider, Ori Zohar","Est. reading time":"6 min read"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/#article","isPartOf":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/"},"author":[{"@id":"https:\/\/opensource.microsoft.com\/blog\/author\/mark-fussell\/","@type":"Person","@name":"Mark Fussell"},{"@id":"https:\/\/opensource.microsoft.com\/blog\/author\/yaron-schneider\/","@type":"Person","@name":"Yaron Schneider"},{"@id":"https:\/\/opensource.microsoft.com\/blog\/author\/ori-zohar\/","@type":"Person","@name":"Ori Zohar"}],"headline":"How Distributed Application Runtime (Dapr) has grown since its announcement","datePublished":"2020-04-29T16:00:35+00:00","dateModified":"2023-12-29T22:24:38+00:00","mainEntityOfPage":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/"},"wordCount":1475,"commentCount":0,"publisher":{"@id":"https:\/\/opensource.microsoft.com\/blog\/#organization"},"image":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/#primaryimage"},"thumbnailUrl":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/MSC24-Japan-business-Getty-1024531730-rgb.webp","keywords":["Community\/partners","Dapr","Microsoft"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/","url":"https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/","name":"How Distributed Application Runtime (Dapr) has grown since its announcement | Microsoft Open Source Blog","isPartOf":{"@id":"https:\/\/opensource.microsoft.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/#primaryimage"},"image":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/#primaryimage"},"thumbnailUrl":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/MSC24-Japan-business-Getty-1024531730-rgb.webp","datePublished":"2020-04-29T16:00:35+00:00","dateModified":"2023-12-29T22:24:38+00:00","description":"Dapr enables developers from all backgrounds to solve some of the toughest challenges when developing distributed applications. We are grateful for the engagement and participation from the community helping us make Dapr better.","breadcrumb":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/#primaryimage","url":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/MSC24-Japan-business-Getty-1024531730-rgb.webp","contentUrl":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/MSC24-Japan-business-Getty-1024531730-rgb.webp","width":1170,"height":640},{"@type":"BreadcrumbList","@id":"https:\/\/opensource.microsoft.com\/blog\/2020\/04\/29\/distributed-application-runtime-dapr-growth-community-update\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/opensource.microsoft.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How Distributed Application Runtime (Dapr) has grown since its announcement"}]},{"@type":"WebSite","@id":"https:\/\/opensource.microsoft.com\/blog\/#website","url":"https:\/\/opensource.microsoft.com\/blog\/","name":"Microsoft Open Source Blog","description":"Open dialogue about openness at Microsoft \u2013 open source, standards, interoperability","publisher":{"@id":"https:\/\/opensource.microsoft.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/opensource.microsoft.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/opensource.microsoft.com\/blog\/#organization","name":"Microsoft Open Source Blog","url":"https:\/\/opensource.microsoft.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/opensource.microsoft.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2019\/08\/Microsoft-Logo.png","contentUrl":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2019\/08\/Microsoft-Logo.png","width":259,"height":194,"caption":"Microsoft Open Source Blog"},"image":{"@id":"https:\/\/opensource.microsoft.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/OpenAtMicrosoft"]}]}},"msxcm_display_generated_audio":false,"msxcm_animated_featured_image":null,"distributor_meta":false,"distributor_terms":false,"distributor_media":false,"distributor_original_site_name":"Microsoft Open Source Blog","distributor_original_site_url":"https:\/\/opensource.microsoft.com\/blog","push-errors":false,"_links":{"self":[{"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/posts\/80049","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/users\/5562"}],"replies":[{"embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/comments?post=80049"}],"version-history":[{"count":1,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/posts\/80049\/revisions"}],"predecessor-version":[{"id":95042,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/posts\/80049\/revisions\/95042"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/media\/95482"}],"wp:attachment":[{"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/media?parent=80049"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/post_tag?post=80049"},{"taxonomy":"content-type","embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/content-type?post=80049"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/topic?post=80049"},{"taxonomy":"programming-languages","embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/programming-languages?post=80049"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/coauthors?post=80049"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}