IOTGate新特性介绍--- kernel模式

Posted 於之

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IOTGate新特性介绍--- kernel模式相关的知识,希望对你有一定的参考价值。

背景

IOTGate项目地址 前往IOTGate
在IOTGate最新版本中,最近新增了一个重要的新特性,那就是kernel模式,在此之前的版本中,网关与前置服务(规约解析务)基于nomer模式通信,即前置为TCP/IP服务端,而网关为TCP/IP客户端,下图为normal模式示意图:


在某些场景下,normal模式有一定的弊端,尤其是在网络比较复杂的情况下,由于在normal模式下前置master是服务端程序,因此必须要将前置master所在服务器开启相应通信端口供网关服务访问,在服务扩展性上,由于网关性能始终都会强于master,因此大多数情况master扩展的可能性会大大高于IOTGate服务,cluster模式下通过zk可以快速发现master节点服务并建立连接,但是由于采用的是无差别连接模式,导致cluster模式下IOTGate会连接到集群中的所有master节点,对于资源的合理分配和按需动态规划是不够的,综上,IOTGate增加了kernel模式。

kernel 模式

下图为kernel模式网络架构图,此模式下,IOTGate与典型的消息中间件更为相似,IOTGate作为纯粹的消息服务端,感知设备和master节点全部作为客户端服务接入IOTGate

该模式中,单节点的IOTGate为master和感知设备提供了同等扩展能力,即master节点可以根据实际需要动态扩展,而不依赖于任何第三方注册中心服务。

如何启用kernel模式

通过无参命令行启动参数k来开启kernel模式,固定服务端口:10915,服务部署使用该模式以前请注意防火墙放开对应端口。目前所有命令行参数说明如下:

kernel和normal模式关系图

目前IOTGate的kernel和normal模式无法共存

演示

  • 启动网关
  • 启动master
    通过monimaster4kernel类启动kernel模式专用测试master

    启动moniterminal服务,即可看到控制台输出经master转发并发送会设备客户端的报文

以上是关于IOTGate新特性介绍--- kernel模式的主要内容,如果未能解决你的问题,请参考以下文章

Swift 5.3 新特性

Hive3新特性

secret 包新特性 | 多位密钥支持 & 多种模式选择

secret 包新特性 | 多位密钥支持 & 多种模式选择

Python 3.10 有哪些新特性 ?

前端快讯Chrome 66 DevTools 新特性