“微服務架構(Microservice Architecture)”一詞在過去幾年裡廣泛的傳播,它用於描述一種設計應用程式的特別方式,作為一套獨立可部署的服務。目前,這種架構方式還沒有準確的定義,但是在圍繞業務能力的組織、自動部署(automated deployment)、端智能(intelligence in the endpoints)、語言和資料的分散控制,卻有著某種共同的特徵。
“微服務(Microservices)”——只不過在滿大街充斥的軟體架構中的一新名詞而已。儘管我們非常鄙視這樣的東西,但是這玩意所描述的軟體風格,越來越引起我們的注意。在過去幾年裡,我們發現越來越多的項目開始使用這種風格,以至於我們身邊的同事在構建企業級應用時,把它理所當然的認為這是一種預設開發形式。然而,很不幸,微服務風格是什麼,應該怎麼開發,關於這樣的理論描述卻很難找到。
簡而言之,微服務架構風格,就像是把一個單獨的應用程式開發為一套小服務,每個小服務運行在自己的進程中,並使用輕量級機制通訊,通常是 HTTP API。這些服務圍繞業務能力來構建,並通過完全自動化部署機制來獨立部署。這些服務使用不同的程式設計語言書寫,以及不同資料存放區技術,並保持最低限度的集中式管理。
在本文中,我介紹老外的(MicroService4Net),在C#程式中使這種類庫非常簡單的建立一個微服務。
你可以選擇Windows 服務或控制台應用程式其中一種託管方式 。 第一步:建立控制台項目,命名為:MicroService4Net.Example,再通過Nuget包管理器安裝 MicroService4Net
第二步:添加命名空間 using MicroService4Net;
在Main方法中添加以下代碼
static void Main(string[] args){var microService = new MicroService(); microService.Run(args);}
預設連接埠:8080 。如果你想要更改連接埠,如下
static void Main(string[] args){var microService = new MicroService(port: 8086); microService.Run(args);}
第三部:添加一個新ApiController,如ExampleController
using System.Web.Http; namespace MicroService4Net.Example.Controllers{public class ExampleController : ApiController { [Route("Example")]public string GetExample() {return "Example"; } }}
完成啟動控制台
在瀏覽器輸入http://localhost:8086/Example:
到目前為止,我們就這麼傻瓜的簡單建立一個小型的微服務,讓我們更多的時間花在商務邏輯上。
如果您希望託管在“Windows服務”上運行,您需要添加兩個空類
12 |
public class MicroServiceInstaller : ProjectInstaller { } public class MicroServiceService : InternalService { } |
重建解決方案後,接下來就簡單多。以管理員身份開啟CMD,使用cd切換到項目編譯的目錄, 執行 MicroService4Net.Example.exe -install (MicroService4Net.Example 是項目名稱,根據你自己定義的名稱進行替換),安裝成功後,開啟服務管理主控台就會發現我們安裝成功的服務。
如果你想卸載服務,執行 MicroService4Net.Example.exe -uninstall
大功告成,如需要源碼,點擊
轉載至:瘋狂的螞蟻