翼度科技»论坛 编程开发 .net 查看内容

基于surging的木舟平台如何上传模块热部署

2

主题

2

帖子

6

积分

新手上路

Rank: 1

积分
6
一、概述

       通过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)]
  1.    [ServiceBundle("api/{Service}/{Method}")]
  2.    public interface ITestApiService:IServiceKey
  3.    {
  4.       // [Authorization(AuthType = AuthorizationType.JWT)]
  5.        public Task<string> SayHello(string name);
  6.    }
复制代码
2. 创建业务领域服务
  1.   public class TestService : ProxyServiceBase, ITestApiService, ISingleInstance
  2.   {
  3.       public Task<string> SayHello(string name)
  4.       {
  5.           return Task.FromResult($"{name} say:hello world");
  6.       }
  7.   }
复制代码
3. 进行发布,你可以在业务领域模块根目录下使用“dotnet publish -c release”进行发布,如下图所示

 然后通过打包压缩发布后的文件,如果能力允许可以删除一些dll文件,比如Microsoft.* 之类的文件,以减少压缩包大小。
4. 登录Kayak 平台,点击跳转到服务管理-》模块管理,如下图所示:

 5. 十秒钟后,无需重启就能在中间服务看到刚刚上传的模块中间服务信息。如下图所示

 还可以通过浏览器GET访问接口

 三、总结

木舟(kayak)的网络组件可以支持组件化添加,删除,开启,关闭,如下图所示,那么针对于这些网络组件,怎么样接入设备呢?那么我们在下篇文章进行介绍。

 

 

来源:https://www.cnblogs.com/fanliang11/p/18500400
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

举报 回复 使用道具