面向.NET开发人员的Dapr——总结和前景
目錄:
面向.NET開發(fā)人員的Dapr——前言
面向.NET開發(fā)人員的Dapr——分布式世界
面向.NET開發(fā)人員的Dapr——俯瞰Dapr
面向.NET開發(fā)人員的Dapr——入門
面向.NET開發(fā)人員的Dapr——參考應用程序
面向.NET開發(fā)人員的Dapr——狀態(tài)管理
面向.NET開發(fā)人員的Dapr——發(fā)布和訂閱
面向.NET開發(fā)人員的Dapr——綁定
面向.NET開發(fā)人員的Dapr——可觀察性
面向.NET開發(fā)人員的Dapr——機密
Summary and the road ahead
總結和前景
We're at the end of our Dapr flight. The jet plane flying at 20,000 feet from?chapter 2?is on final approach and about to land.
Dapr航班到達終點。飛機從第二章在20000英尺高空飛行,最后接近地面并即將著陸
As the plane taxis to the gate, let's take a minute to review some important conclusions from this guide:
Dapr?- Dapr is a?Distributed Application Runtime?that streamlines how you build distributed applications. It exposes an architecture of building blocks and pluggable components. Dapr provides a?dynamic glue?that binds your application with infrastructure capabilities that exist in the Dapr runtime. Instead of building infrastructure plumbing, you and your team focus on delivering business features to customers.
Open source and cross-platform?- The native Dapr API can be consumed by?any platform?that supports HTTP or gRPC. Dapr also provides language-specific SDKs for popular development platforms. Dapr v1.0 supports Go, Python, .NET, Java, PHP, and JavaScript.
Building blocks?- Dapr building blocks encapsulate distributed application functionality. At the time of this writing, Dapr supports the seven building blocks shown in figure 11-1.
當飛機滑行到登機口時,花一點時間回顧本指南中的重要結論:
Dapr?-Dapr 是一種?分布式應用程序運行時?,它可以簡化構建分布式應用程序的方式。它公開構建基塊和可插入組件的體系結構。Dapr 提供了一個?動態(tài)膠水?,它將應用程序與 Dapr 運行時中存在的基礎結構功能進行綁定。你和你的團隊將精力集中于向客戶提供業(yè)務功能,而不是構建基礎結構管道。
開源和跨平臺?-本機 Dapr API 可由支持 HTTP 或 gRPC 的?任何平臺?使用。Dapr 還為常見開發(fā)平臺提供特定于語言的 Sdk。Dapr v1.0 支持Go、Python、.NET、Java、PHP 和 JavaScript。
構建塊?-Dapr 構建塊封裝分布式應用程序功能。撰寫本文時,Dapr 支持圖11-1 中所示的七個構建塊。
Figure 11-1. Dapr building blocks.
圖 11-1。Dapr 構建塊。
Components?- Dapr components provide the concrete implementation for each Dapr building block capability. They expose a common interface that enables developers to swap out component implementations without changing application code. Figure 11-2 shows the relationship among components, building blocks, and your service.
組件?-Dapr 組件提供每個 Dapr 構建塊功能的具體實現。它們公開一個公共接口,使開發(fā)人員能夠在不更改應用程序代碼的情況下替換組件實現。圖11-2 顯示組件、構建塊和服務之間的關系。
Figure 11-2. Dapr building block integration.
圖 11-2。Dapr 構建塊集成。
Sidecars?- Dapr runs alongside your application in a sidecar architecture, either as a separate process of a container. Your application communicates with the Dapr APIs over HTTP and gRPC. Sidecars provide isolation and encapsulation as they aren't part of the service, but connected to it. Figure 11-3 shows a sidecar architecture.
邊車 -Dapr 在邊車架構中與應用程序一起運行,可以作為容器的單獨進程。應用程序通過 HTTP 和 gRPC 與 Dapr Api 通信。邊車提供隔離和封裝,它們不是服務的一部分,而是連接到它。圖11-3 顯示了邊車的體系結構。
Figure 11-3. Sidecar architecture.
圖 11-3。邊車體系結構。
Hosting environments?Dapr has cross-platform support and can run in multiple environments. At the time of this writing, the environments include a local self-hosted mode and Kubernetes.
eShopOnDapr?- This book includes an accompanying reference application entitled?eShopOnDapr. Using a popular e-commerce application domain, the reference application demonstrates the usage of each building block. It's an evolution of the widely popular?eShopOnContainers, released several years ago.
?Dapr 宿主環(huán)境提供跨平臺支持,可以在多個環(huán)境中運行。撰寫本文時,環(huán)境包含本地自承載模式和 Kubernetes。
eShopOnDapr -此書籍包含一個名為 eShopOnDapr的附屬參考應用程序。使用常見的電子商務應用域,參考應用程序演示了每個構建基塊的用法。這是 eShopOnContainers(幾年前發(fā)布且廣泛使用)的一種演變。
The road ahead
前景
Looking forward, Dapr has the potential to have a profound impact on distributed application development. What can you expect from the Dapr team and its open-source contributors?
展望未來,Dapr 有可能對分布式應用程序開發(fā)產生深遠的影響。你對Dapr 團隊及其開源參與者有哪些期望?
At the time of writing, the list of proposed enhancements for Dapr include:
撰寫本文時,Dapr 的建議增強列表包括:
Feature enhancements to existing building blocks:? ? ? 現有構建塊的功能增強:
Query capabilities in state management enabling you to retrieve multiple values. ?? ??狀態(tài)管理中的查詢能力使你能夠檢索多個值。
Topic filtering in pub/sub enabling you to filter topics based on their content. ?? ? ??通過 "發(fā)布/訂閱" 中的主題篩選,您可以基于內容篩選主題。
An application tracing API in observability that provides tracing in the application directly without having to bind to specific libraries. ?? ? ?應用程序跟蹤 API,無需綁定到特定庫即可直接在應用程序中提供跟蹤。
Binding and pub/sub support for actors providing event driven capabilities to the actor programming model. Bound components will trigger events and messages invoke methods in the actor. ?? ? 通過為參與者增加綁定和發(fā)布/訂閱支持,為參與者編程模型提供事件驅動能力。綁定組件將觸發(fā)事件和消息調用執(zhí)行組件中的方法。
New building blocks:? ? ??新構建塊:
Configuration API building block for reading and writing configuration data. The block will bind to providers that include Azure Configuration Manager or GCP Configuration Management. ?? ??用于讀取和寫入配置數據的配置 API 構建塊。該構建塊將綁定到 Azure Configuration Manager 或 GCP GCP Configuration Management的提供程序。
Http scale-to-zero autoscale. ?? ? ?Http 自動縮容至0。
Leader election building block to provide singleton instances and locking semantic capabilities. ?? ? ? leader選舉構建塊提供單例和鎖定語義能力(不會翻譯)。
Transparent proxying building block for service invocation, enabling you to route messages based on URLs or DNS addresses at the network level. ?? ??用于服務調用的透明代理構建塊,使你能夠基于網絡級別的 Url 或 DNS 地址來路由消息。
Resiliency building block (circuit breakers, bulkheads & timeouts). ?? ?彈性構建塊 (斷路熔斷器,隔艙 & 超時) 。
Integration with frameworks and cloud native technologies. Some examples include:? ? ? 與框架和云原生技術的集成。示例包括:
Django
Nodejs
Express
Kyma
Midway
New language SDKs:? ? ??新語言 Sdk:
JavaScript
RUST
C++
New hosting platforms:? ? ??新的宿主平臺:
VMs
Azure IoT Edge
Azure Stack Edge
Azure Service Fabric
Developer and operator productivity tooling:? ? ??開發(fā)人員和操作員生產工具:
VS Code extension. ?? ? ? VS Code 擴展。
Remote Dev Containers for local debugging a DevOps pipeline development. ?? ? ?用于本地調試 DevOps 流水線開發(fā)的遠程開發(fā)容器。
Dapr operational dashboard enhancements that will provide deeper visibility into the operational concerns of managing Dapr applications. ?? ? Dapr 操作儀表板增強功能,可更深入地了解管理 Dapr 應用程序的操作問題。
Dapr version 1.0 provides developers with a compelling toolbox for building distributed applications. As the proposed enhancement list shows, Dapr is under active development with many new capabilities to come. Stay tuned to the?Dapr site?and?Dapr announcement blog?for future updates.
Dapr 版本1.0 為開發(fā)人員提供了引人注目的工具箱來構建分布式應用程序。如建議的增強列表所示,Dapr 處于積極開發(fā)下,將有許多新功能。請繼續(xù)關注 Dapr 站點?和 Dapr 公告博客?,跟蹤將來更新。
目錄:
面向.NET開發(fā)人員的Dapr——前言
面向.NET開發(fā)人員的Dapr——分布式世界
面向.NET開發(fā)人員的Dapr——俯瞰Dapr
面向.NET開發(fā)人員的Dapr——入門
面向.NET開發(fā)人員的Dapr——參考應用程序
面向.NET開發(fā)人員的Dapr——狀態(tài)管理
面向.NET開發(fā)人員的Dapr——發(fā)布和訂閱
面向.NET開發(fā)人員的Dapr——綁定
面向.NET開發(fā)人員的Dapr——可觀察性
面向.NET開發(fā)人員的Dapr——機密
總結
以上是生活随笔為你收集整理的面向.NET开发人员的Dapr——总结和前景的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 面向.NET开发人员的Dapr——参考应
- 下一篇: 面向.NET开发人员的Dapr——机密