《ASP.NET Core 微服务实战》译者序
最近,我將《ASP.NET Core 微服務實戰》一書由英文翻譯為中文。這本書是由清華大學出版社引進的,目前還處于最后的排版校對過程中,現將該書的譯者序發表于此。
以下為譯者譯全文:
“微服務”的概念在 2014 年正式提出之后,越來越多的團隊開始用它來設計自己的業務系統,各種微服務框架和開發過程管理方法也同時興起、不斷成熟。微服務設計方法清晰地定義了各個開發團隊的業務邊界,微服務框架以不同的方式實現了服務之間的協作與集成,根據康威定律我們可以推導這樣一種產品開發方法必然會映射到人員協作方式上去。還有同步興起的 DevOps 運動,它及時恰當地補齊了微服務開發過程中的技術方法,讓微服務生態如虎添翼。
經過幾年的積累,人們開始意識到,微服務從概念到實現,最后推廣到整個組織,這整個過程期間存在大量的挑戰:服務之間的依賴管理、大量服務實例的運維、單個服務的獨立部署,以及承擔不同角色的微服務在同一個生態系統中的身份認證等,都開始成為微服務團隊需要直接面對的挑戰。與此同時,各類微服務框架也層出不窮,讓開始接觸微服務的開發人員眼花繚亂,既難以區分它們的優劣、做出合適的選型,又難以找到高效的學習路徑。
在 .NET 技術領域,微服務的挑戰比起很多其他技術棧有過之而無不及。.NET 技術在企業應用開發領域有著長久的運用,因此有大量的存量應用需要面向服務化改造。而 .NET Core 技術作為新一代 .NET 技術方向,無論是這一技術生態自身的完整性,還是基于它的微服務框架體系,都處于持續的完善之中。最后,在傳統的企業應用開發領域,并沒有普遍采用持續交付等實踐,當時所開發的應用也難以滿足云原生應用所要求的諸多特性,因此改造過程難度較大。
所幸 .NET Core 作為全新的 .NET 技術,它不僅完全開源、跨平臺,更面向云原生開發進行了大量而細致的優化。它完全模塊化,不依賴特定操作系統,同時其文件系統、網絡和配置等基礎功能模塊對跨平臺、命令行等現代化輕量級開發所要求的特性提供了優秀的支持。正是由于 .NET Core 作為基礎開發平臺天然適合云原生開發,因此基于 ASP.NET Core 開發微服務也天然具有這些優勢。
本書“麻雀雖小,五臟俱全”,它從 .NET Core 開發環境安裝開始,緊接著詳細介紹了持續交付、API 優先和測試驅動等重要開發方法和思想。本書探討了人們對微服務的各種理解,以實際項目從各方面體現出本書作者對微服務的全方面詮釋,引導讀者在直觀的體驗中建立自己的理解;同時,本書還主張把微服務和云原生實踐結合運用,書中通過解析十二因子應用的各項特性,并分析它們在本書示例項目中的體現,讓讀者對微服務和云原生的結合更為體系化。在本書的講解過程中,每當遇到可能存在不同做法的場景,作者總是詳細論述各項考量、仔細比較各種可能的做法,引發讀者思考;同時,本書還大量探討了傳統應用開發中的典型做法,以及在微服務和云原生開發時應該采納的新方法,仔細解析其中緣由,為存量應用的改造提供了直接指導。
在本書英文原版寫作時,.NET Core 還處于早期的 1.1 版本,而現在中文版翻譯期間,.NET Core 的最新版已經是 2.2 版了。為了讓讀者在基于最新版 .NET Core 練習書中的示例項目時更為順暢,譯者對書中所涉及的示例代碼進行了升級。在升級過程中,部分代碼需要經過改寫才能與新版本的運行時或者依賴模塊配合工作。讀者在使用書中的代碼時,請自行將書中所涉及的 GitHub 倉庫地址由 https://github.com/microservices-aspnetcore 替換為 https://github.com/microservices-aspnetcore-zh ,在使用 Docker 鏡像的方式運行示例項目時,將書中的 Docker 鏡像由?dotnetcoreservices?前綴替換為?dotnetcoreserviceszh。如果使用翻譯版的代碼遇到問題,請在這些 GitHub 倉庫中提交 issue,譯者將樂意為讀者解答各類常見問題。
限于作者水平等各方面原因,本書在翻譯時難免留下一些紕漏與錯誤,如承蒙讀者指正,則譯者將倍感榮幸,其他讀者也將一起獲益。請訪問本書中文版代碼倉庫 https://github.com/microservices-aspnetcore-zh 或者使用電子郵件 jijie.chen@outlook.com 與譯者取得聯系。
本書中文版的引進必將為 .NET 技術領域的微服務實踐和云原生技術的普及做出重要貢獻。在此,譯者特此感謝清華大學出版社的大力支持,感謝張善友老師為本書譯文提出的寶貴建議,感謝曾一起共事的翻譯小組 WorkSharp 的同事們、特別是劉夏先生的指導,感謝社區中關注本書的各位熱心人士的激勵和幫助。最后,最需要致以真誠感謝的,是時常關心我的翻譯工作、提醒我及時休息的父母;以及忍受我用幾個月的業余時間來翻譯、卻仍然要在翻譯時隨時提供參謀的愛人張圣奇:是你們無限的耐心和持續的支持才讓本書的翻譯工作得以順利完成。
原文地址:https://blog.jijiechen.com/post/aspnetcore-microservices-preface-by-translator/
.NET社區新聞,深度好文,歡迎訪問公眾號文章匯總?http://www.csharpkit.com?
總結
以上是生活随笔為你收集整理的《ASP.NET Core 微服务实战》译者序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 解读 Microsoft.NET.Sdk
- 下一篇: .NET 云原生技术使用调查