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

一、概述

通过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);
   }
  1. 创建业务领域服务
复制代码
  public class TestService : ProxyServiceBase, ITestApiService, ISingleInstance
  {
      public Task<string> SayHello(string name)
      {
          return Task.FromResult($"{name} say:hello world");
      }
  }
  1. 进行发布,你可以在业务领域模块根目录下使用"dotnet publish -c release"进行发布,如下图所示

然后通过打包压缩发布后的文件,如果能力允许可以删除一些dll文件,比如Microsoft.* 之类的文件,以减少压缩包大小。

  1. 登录Kayak 平台,点击跳转到服务管理-》模块管理,如下图所示:
  1. 十秒钟后,无需重启就能在中间服务看到刚刚上传的模块中间服务信息。如下图所示

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

三、总结

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

相关推荐
fanly112 个月前
基于surging 如何利用peerjs进行语音视频通话
surging microservice
fanly112 个月前
基于surging的木舟IOT平台如何添加网络组件
surging microservice
fanly112 个月前
基于surging的产品项目-木舟开源了!
surging microservice
fanly115 个月前
解读surging 的内存过高的原因
surging microservice
fanly116 个月前
如何基于surging跨网关跨语言进行缓存降级
surging microservice