微服務是雲原生架構的核心,通常使用Kubernetes 來按需管理服務擴充套件。 微軟一直走在 Cloud Native Computing Foundation的 最前沿,並通過使用Kubernetes來支援其超大規模Azure和其混合雲Azure Stack,微軟對雲原生的投資一部分來自其工具,該工具具有一系列支援雲原生微服務開發的不同平臺和服務。除了.NET也是微軟在雲原生應用開發的一個重要平臺,Dapr(分散式應用程式執行時)也是另外一個非常重要的平臺,根據官方文件的說法,Dapr是一個可移植、事件驅動的執行時,讓企業開發者更容易利用各種語言和框架構建柔性、無狀態和有狀態的微服務應用,並執行在雲端和邊緣。 Dapr的核心由Go語言寫成,開發團隊一開始有計劃使用.NET Core/C#來寫,但是考慮到社群的接受程度,遂最終選定Go作為開發語言。
Dapr 自 2019年秋季釋出以來已經有一段時間了,但是在過去的一年中一直在繼續開發, 並且最近已經發布第三個候選版本可用,因此Dapr 1.0版本並不遙遠,希望該候選版本是最後一個候選版本,並在未來幾周內正式釋出v1.0,也就是說春節後就可以正式投入生產了 。該開發過程包括開發工具和Dapr CLI,用於設定開發環境並幫助應用程式腳手架,隨時為您新增程式碼。 如果您還沒有看過Dapr,那麼春節正是開始看看它是否可以幫助您更快地構建服務的好時機。
Dapr CLI是一個不錯的起點,它可與本地Docker安裝一起使用。它適用於Linux,macOS和Windows,並提供主要版本的安裝說明。推薦大家從幾篇由朱永光 寫的文章開始瞭解:
雲原生的微服務在任何現代應用程式框架中都越來越重要,因此選擇正確的開發環境和工具至關重要。隨著Dapr接近其1.0版本,它為我們提供了一組構建塊和支援工具,可幫助我們以易於部署和可重複的方式實現關鍵的微服務設計模式。對通用語言的支援和與框架無關的方法確保了花幾天時間評估Dapr是非常值得。特別對於.NET開發者來說,Dapr 裡面的程式設計模型是很熟悉的,大家學起來吧。
國內有一個Dapr社群,這個社群裡大家都是跨語言的, Dapr SIG 是 雲原生社群 主辦的特別興趣小組SIG。SIG 目的是為了給在某一個領域志同道合的人共同學習和交流的平臺。網址是 https://i.cloudnative.to/dapr/ ,社群也正在組織翻譯Dapr的文件,非常歡迎你的加入進來翻譯文件。翻譯指導連結請到 https://github.com/dapr-cn/docs 。