詳解用MicroService4Net 建立一個微服務的實例

零下一度
發布: 2017-06-23 14:31:24
原創
5291 人瀏覽過

「微服務架構(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服務」上運行,您需要新增兩個空類別

#1
2
public
 
class MicroServiceInstaller : ProjectInstaller { }#public
 
class MicroServiceService : InternalService { }
重新產生解決方案後,接下來就簡單多。以管理員身分開啟CMD,使用cd切換到專案編譯的目錄, 執行MicroService4Net.Example.exe -install (MicroService4Net.Example 是專案名稱,根據您自己定義的名稱進行替換),安裝成功後,開啟服務管理控制台就會發現我們安裝成功的服務。
 

 

如果你想要卸載服務,執行 MicroService4Net.Example.exe -uninstall

大功告成,如需要原始碼,點選  

 轉載至:瘋狂的螞蟻

以上是詳解用MicroService4Net 建立一個微服務的實例的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!