https://www.gitbook.com/download/mobi/book/dzfweb/microsoft-microservices-book
https://www.gitbook.com/download/epub/book/dzfweb/microsoft-microservices-book
https://www.gitbook.com/book/dzfweb/microsoft-microservices-book/details
下載網址:https://aka.ms/microservicesebook
出版者
Microsoft 開發人員部門、.NET 與 Visual Studio 產品團隊
微軟公司的一個部門
一種微軟方式
華盛頓州雷德蒙德 98052-6399
版權所有 © 2017 微軟公司
版權所有。未經出版商書面許可,不得以任何形式或方式複製或傳播本書的任何部分內容。
本書以「原樣」提供,表達了作者的觀點和意見。本書中表達的觀點、觀點和訊息,包括 URL 和其他網路網站引用,可能會發生變化,恕不另行通知。
本文所描述的一些範例僅用於說明目的並且是虛構的。無意或不應推斷出任何真正的關聯或聯繫。
Microsoft 和 http://www.microsoft.com「商標」網頁上列出的商標是 Microsoft 集團公司的商標。
Mac 和 macOS 是 Apple Inc. 的商標。
Docker 鯨魚標誌是 Docker, Inc. 的註冊商標。
所有其他標記和標誌均為其各自所有者的財產。
共同作者:
Cesar de la Torre ,微軟公司 .NET 產品團隊資深 PM
Bill Wagner ,微軟公司 C+E 資深內容開發人員
Mike Rousos ,Microsoft DevDiv CAT 團隊首席軟體工程師
編輯:
麥克·波普
史蒂夫·霍格
參加者及評審:
Jeffrey Ritcher ,Microsoft Azure 團隊合作夥伴軟體工程師
Jimmy Bogard ,Headspring 首席架構師
Udi Dahan ,特定軟體創始人兼首席執行官
Jimmy Nilsson ,Factor10 聯合創始人兼首席執行官
Glenn Condron ,ASP.NET 團隊資深專案經理
Mark Fussell ,Microsoft Azure Service Fabric 團隊首席 PM 負責人
Diego Vega ,微軟實體框架團隊 PM 主管
Barry Dorrans ,高級安全專案經理
Rowan Miller ,微軟資深專案經理
Ankit Asthana ,Microsoft .NET 團隊首席 PM 經理
Scott Hunter ,微軟 .NET 團隊合作夥伴總監 PM
Dylan Reisenberger ,Polly 的架構師和開發主管
Steve Smith ,ASPSmith Ltd. 的軟體工匠和培訓師
Ian Cooper ,Brighter 的編碼架構師
Unai Zorrilla ,Plain Concepts 架構師兼開發主管
Eduard Tomas ,Plain Concepts 開發主管
Ramon Tomas ,Plain Concepts 開發人員
David Sanz ,Plain Concepts 開發人員
Javier Valero ,Grupo Solutio 營運長
Pierre Millet ,微軟資深顧問
Michael Friis ,Docker 公司產品經理
Charles Lowell ,微軟 VS CAT 團隊軟體工程師
企業越來越多地透過使用容器來實現成本節約、解決部署問題以及改進 DevOps 和生產營運。 Microsoft 一直在透過建立 Azure 容器服務和 Azure Service Fabric 等產品,並與 Docker、Mesosphere 和 Kubernetes 等產業領導者合作,發布適用於 Windows 和 Linux 的容器創新。這些產品提供容器解決方案,幫助公司以雲端速度和規模建置和部署應用程序,無論他們選擇什麼平台或工具。
Docker 正在成為容器產業事實上的標準,並得到 Windows 和 Linux 生態系統中最重要的供應商的支援。 (微軟是支援 Docker 的主要雲端供應商之一。)未來,Docker 可能會在雲端或本地端的任何資料中心中無所不在。
此外,微服務架構正在成為分散式關鍵任務應用程式的重要方法。在基於微服務的架構中,應用程式建構在可以獨立開發、測試、部署和版本控制的服務集合之上。
本指南介紹了開發基於微服務的應用程式並使用容器管理它們。它討論了使用 .NET Core 和 Docker 容器的架構設計和實作方法。為了更輕鬆地開始使用容器和微服務,本指南重點介紹您可以探索的參考容器化和基於微服務的應用程式。範例應用程式可在 eShopOnContainers GitHub 儲存庫中取得。
本指南主要在開發環境層級提供基礎開發和架構指導,重點在於兩種技術:Docker 和 .NET Core。我們的目的是讓您在考慮應用程式設計時閱讀本指南,而無需專注於生產環境的基礎架構(雲端或本地)。稍後,當您建立生產就緒的應用程式時,您將對基礎架構做出決定。因此,本指南旨在與基礎設施無關,並且更加以開發環境為中心。
學習本指南後,下一步是了解 Microsoft Azure 上的生產就緒型微服務。
本指南不重點關注應用程式生命週期、DevOps、CI/CD 管道或團隊工作。補充指南《使用 Microsoft 平台和工具進行容器化 Docker 應用程式生命週期》重點討論了這個主題。目前指南也沒有提供有關 Azure 基礎架構的實作詳細信息,例如有關特定編排器的資訊。
我們為剛接觸基於 Docker 的應用程式開發和基於微服務的架構的開發人員和解決方案架構師編寫了本指南。如果您想了解如何使用 Microsoft 開發技術(特別關注 .NET Core)和 Docker 容器來架構、設計和實作概念驗證應用程序,那麼本指南適合您。
如果您是技術決策者(例如企業架構師),在決定為新的現代分散式應用程式選擇哪種方法之前需要了解架構和技術概述,那麼您也會發現本指南很有用。
本指南的第一部分介紹了 Docker 容器,討論如何在 .NET Core 和 .NET Framework 作為開發框架之間進行選擇,並概述了微服務。此內容適用於需要概述但不需要關注程式碼實作細節的架構師和技術決策者。
本指南的第二部分從基於 Docker 的應用程式的開發流程部分開始。它重點關注使用 .NET Core 和 Docker 實現應用程式的開發和微服務模式。對於想要專注於程式碼以及模式和實作細節的開發人員和架構師來說,本節將是最感興趣的。
eShopOnContainers 應用程式是 .NET Core 和微服務的參考應用程序,旨在使用 Docker 容器進行部署。該應用程式由多個子系統組成,包括多個電子商店 UI 前端(一個 Web 應用程式和一個本機行動應用程式)。它還包括用於所有所需伺服器端操作的後端微服務和容器。
此微服務和基於容器的應用程式原始碼是開源的,可在 eShopOnContainers GitHub 儲存庫中取得。
我們編寫本指南是為了幫助您了解 .NET 中容器化應用程式和微服務的架構。該指南和相關參考應用程式將會不斷發展,因此我們歡迎您的回饋!如果您對如何改進本指南有意見,請將其發送至:
[!div class="step-by-step"] [下一步] (container-docker-introduction/index.md)