一、概述
透過3個月的趕工,基本上快完成1.0版本的研發,將在下個月釋出社群1.0版本。
木舟 (Kayak) 是什麼?
木舟(Kayak)是基於.NET6.0軟體環境下的surging微服務引擎進行開發的, 平臺包含了微服務和物聯網平臺。支援非同步和響應式程式設計開發,功能包含了物模型,裝置,產品,網路元件的統一管理和微服務平臺下的註冊中心,服務路由,模組,中間服務等管理。還有多協議適配(TCP,MQTT,UDP,CoAP,HTTP,Grpc,websocket,rtmp,httpflv,webservice,等),透過靈活多樣的配置適配能夠接入不同廠家不同協議等裝置。並且透過裝置告警,訊息通知,資料視覺化等功能。能夠讓你能快速建立起微服務物聯網平臺系統。
那麼此篇文章的目的是?就是介紹微服務平臺下的模組熱部署功能。
二、如何使用模組熱部署功能
在使用模組熱部署功能,需要開發測試的模組,測試的模組包含了業務領域介面,業務領域服務。
1.建立業務介面,需要身份鑑權驗證可以加[Authorization(AuthType = AuthorizationType.JWT)]
[ServiceBundle("api/{Service}/{Method}")] public interface ITestApiService:IServiceKey { // [Authorization(AuthType = AuthorizationType.JWT)] public Task<string> SayHello(string name); }
2. 建立業務領域服務
public class TestService : ProxyServiceBase, ITestApiService, ISingleInstance { public Task<string> SayHello(string name) { return Task.FromResult($"{name} say:hello world"); } }
3. 進行釋出,你可以在業務領域模組根目錄下使用“dotnet publish -c release”進行釋出,如下圖所示
然後透過打包壓縮釋出後的檔案,如果能力允許可以刪除一些dll檔案,比如Microsoft.* 之類的檔案,以減少壓縮包大小。
4. 登入Kayak 平臺,點選跳轉到服務管理-》模組管理,如下圖所示:
5. 十秒鐘後,無需重啟就能在中間服務看到剛剛上傳的模組中間服務資訊。如下圖所示
還可以透過瀏覽器GET訪問介面
三、總結
木舟(kayak)的網路元件可以支援元件化新增,刪除,開啟,關閉,如下圖所示,那麼針對於這些網路元件,怎麼樣接入裝置呢?那麼我們在下篇文章進行介紹。