自首個帶微服務版本的框架釋出:Taurus.MVC V3.0.3 微服務開源框架釋出:讓.NET 架構在大並行的演進過程更簡單
已經過去快1年了,在這近一年的時間裡,版本經歷了N個版本的迭代。
如今,是時候寫文章介紹一下了:
以下介紹中,僅以.Net Core 6 為範例程式碼。
框架支援在.Net Framework 2.0+、.Net Core 2.1+ 任意版本執行。
新版本的更新紀錄檔很多,這裡簡化成以下10條:
1、對閘道器、註冊中心(主)、註冊中心(從)進行了大量的穩定性和效能優化。 2、對Linux 執行環境做了相容處理。 3、簡化Kestrel域名系結和Https證書系結。 4、內部優化:模組調整:除Mvc模組,其餘以Plugin形式提供服務。 5、內部優化:名稱空間調整:僅留 Taurus.Mvc、Taurus.Plugin 兩個名稱空間。 6、調整為外掛:MicroService:提供微服務服務。 7、調整為外掛:CORS:提供跨域服務。 8、調整為外掛:Doc:提供WebAPI測試檔案自動生成及自動化測試功能。 9、新增外掛:Limit:提供IP黑名單、存取頻率限速、ack安全碼驗證等限制服務。 10、新增外掛:Admin:提供視覺化後臺統一管理服務。
其它:比如提供了分散式鎖功能。
下面,以目前實際執行作為範例講解:如何在專案實戰中應用和部署。
可以通過下載原始碼執行編繹,【或新建.Net Core 6的專案,在Nuget中參照Taurus】。
Program.cs:程式碼:
var builder = WebApplication.CreateBuilder(args); builder.WebHost.UseUrls(MvcConfig.Kestrel.Urls); //啟動埠外接到組態檔。 builder.Services.AddTaurusMvc();//必要1 var app = builder.Build(); app.UseTaurusMvc();//必要2 app.Run();
appsetting.json:設定:
{ "AppSettings": { "MicroService.Server.Name": "RegCenter", "Urls": "http://*:80",
"Mvc.RunUrl":"http://regcenter.cyqdata.com" } }
調整好程式碼,編繹後,即可上傳到Linux環境中:
通過Supervisor啟動即可。
Linux 部署 範例地址:http://regcenter.cyqdata.com
1、程式和註冊中心一致,唯 appsetting.json 組態檔需要調整如下:
{ "AppSettings": { "MicroService.Server.Name": "Gateway", "MicroService.Server.RcUrl": "http://regcenter.cyqdata.com", "Mvc.RunUrl":"https://gateway.cyqdata.com" } }
2、把證書放在App_Data/ssl目錄下
調整好程式碼,編繹後,即可上傳到Linux環境中:
通常在各平臺可以下載域名的pfx證書,
下載後解壓,反密碼xxx.txt,改成域名.txt即可。
通過Supervisor啟動即可。
Linux 部署 範例地址:https://gateway.cyqdata.com
部署好上面兩個,伺服器端即算完成。
【上面的範例,若部署在一臺電腦上,剛好一個佔80埠,一個佔443埠】。
程式程式碼都和以上一致,appsetting.json 設定有點區別:
{ "AppSettings": { "MicroService.Client.Name": "*", "MicroService.ClientRcUrl": "http://regcenter.cyqdata.com", "Urls":"http://*:0" } }
說明:Urls 指定0埠,即隨機埠,可以多開。
部署環節就介紹到這裡了,也可以參考以前的系列文章:Taurus.MVC 微服務架構(雙語言支援:.Net Core/Java)
【相關的設定有調整的,文章都修改過了】
下面是本次發版本釋出的重點內容:
不管對閘道器,還是註冊中心,或是使用者端,都有一個預設的視覺化管理後臺。
預設空密碼,直接可登陸:
1、MS - Host :微服務相關內容,可以觀察各註冊節點資訊,註冊中心還可以遠端停止使用者端微服務,或讓使用者端退出應用程式。
2、OS - Environment :系統環境資訊、以及專案載入的程式集資訊:
3、App - Config :設定管理介面,可以管理Kestrel、Taurus、CYQ.Data 框架內部的相關的項,直接雙擊Config Value,即可修改調整:
【除了Kestrel的相關設定,其餘設定基本是修改即生效】。
4、App - Log:用於檢視本機檔案紀錄檔【可以實時列印請求資訊、請求執行的Sql、或全域性Sql時長過濾的語句】。
5、Ext - Menu :擴充套件選單,需要在Setting 手工新增選單,才會展示,效果如下【初步用它來統一管理Supervisor】:
6、Setting :資訊設定,包括:【唯讀管理員建立與刪除】、【IP黑名單】、【手工新增微服務節點】、【擴充套件選單新增】
通過Admin外掛,可以實時掌握管理整個專案。
1、開源地址:https://github.com/cyq1162/Taurus.MVC
2、相關細節的內容,後續再寫文章介紹。
版權宣告:本文原創發表於 部落格園,作者為 路過秋天 本文歡迎轉載,但未經作者同意必須保留此段宣告,且在文章頁面明顯位置給出原文連線,否則視為侵權。 |
個人微信公眾號 |
創業QQ群:617713515 |
Donation(掃碼支援作者):支付寶: |
Donation(掃碼支援作者):微信: |
騰訊雲產品福利專區 |