1. 程式人生 > >微服務之Service Fabric 系列 (一)

微服務之Service Fabric 系列 (一)

開發人員 OS ng- 概述 發現 開發環境 上進 scope start

參考

  微軟官方文檔 service fabric

  百家號 大話微服務架構之微服務框架微軟ServiceFabric正式開源

一、概述

  1.概念

    Azure Service Fabric 是一款分布式系統平臺,可方便用戶輕松打包、部署和管理可縮放的可靠微服務和容器。 Service Fabric 還解決了開發和管理雲本機應用程序面臨的重大難題。 開發人員和管理員不需解決復雜的基礎結構問題,只需專註於實現苛刻的任務關鍵型工作負荷,即那些可縮放、可靠且易於管理的工作負荷。 Service Fabric 代表了下一代平臺,用於生成和管理在容器中運行的企業級單層雲規模應用程序。

  2.微服務

    微服務是指用小型服務集合來構建服務端應用的方法,每個服務在獨立的進程中運行,服務間通過特定協議(http,AMQP)通信,每個服務能夠獨立開發、部署,擁有自己的領域數據模型和領域邏輯,可以有不同的數據存儲技術甚至是不同的編程語言。

    微服務的目的在:解耦。解耦是永恒的主題,依賴註入是為了解耦,應用分層是為了解耦,這些可以看做是縱向解耦,而微服務是把應用橫向解耦,服務間解耦。

    下圖是傳統一體式應用開發與微服務開發的對比:

      技術分享圖片

      

      ①單一式應用包含域特定的功能,通常按照功能層來劃分,例如傳統三層。

      ②單一式應用可通過復制到多個服務器/虛擬機/容器上進行擴展。

      ③微服務應用程序將單個功能分隔成單個較小的服務。

      ④微服務方法可通過獨立部署每個服務而擴展,跨服務器/虛擬機/容器創建這些服務的實例。

    service fabric 從三方面來幫助我們使用微服務的方式來構建應用:

      ①提供系統服務的平臺,用於部署、升級、檢測和重啟失敗的服務、發現服務、路由消息、管理狀態和監視運行狀況

      ②能夠部署在容器中運行或作為進程運行的應用程序。

      ③有助於以微服務形式生成應用程序的生產編程 API:ASP.NET Core、Reliable Actors 和 Reliable Services。 可以選擇使用任意代碼來生成微服務。 但使用這些 API 不僅可讓作業變得更簡單,也能更深入地與平臺集成。 例如,可以獲取運行狀況和診斷信息,或利用內置的高可用性

      下圖是service fabric 與spring cloud 的對比:

          技術分享圖片

二、開發準備

  1.Windows下開發環境準備

    如果需要在windows上開發並運行service fabric 應用程序,需要安裝Service Fabric 運行時、SDK 和工具

    具體安裝步驟可參照 Windows上安裝service fabric

    以下是windows 10 下,安裝了vs2017的開發人員的環境準備

    ①重新運行vs2017安裝軟件,選擇修改,選擇azure開發

        技術分享圖片

        

    ②安裝 Microsoft Azure Service Fabric SDK

    ③啟用 PowerShell 腳本執行

      Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Force -Scope CurrentUser
   

  2.Linux下開發環境準備
    參照步驟:在 Linux 上準備開發環境



    

微服務之Service Fabric 系列 (一)