什麼是微服務?

microservices_600x300

微服務描述從個別可部署的服務建置分散式應用程式的架構程序,這些服務會執行特定商務功能,並透過Web介面進行通訊。 DevOps 小組會將微服務中的個別功能片段包含在微服務中,並結合如建置組塊等微服務來建置較大的系統。

微服務會套用開放式/封閉原則的範例:

  • 它們已開放供擴充功能使用(使用公開的介面)
  • 它們已關閉以進行修改(每個都是獨立實作和版本設定)

微服務在整合型架構上提供許多優點:

  • 它們可以藉由確保某個服務中的問題不會當機或影響應用程式的其他部分,來移除 單一失敗 點(SPOF)。
  • 個別微服務可以獨立相應放大,以提供額外的可用性和容量。
  • DevOps 小組可以藉由新增微服務來擴充功能,而不會不必要地影響應用程式的其他部分。

使用微服務可以提升小組速度。 DevOps 做法,例如 持續整合持續傳遞,可用來驅動微服務部署。 微服務可讓軟體開發小組利用事件驅動程式設計與自動調整等案例,以很好地補充雲端式應用程式架構。 微服務元件會公開 API(應用程式開發介面),通常是透過 REST 通訊協定來與其他服務通訊。

越來越常見的做法是使用容器叢集來實作微服務。 容器允許微服務的隔離、封裝和部署,而協調流程會將一組容器相應放大至應用程式。

下一步

深入瞭解 Azure 上的微服務。