smqttx-2.0.11 版本正式发布

基于Java实现的分布式MQTT集群,SMQTT的升级版本!欢迎大家使用,顺便动动小手Star一下!  https://gitee.com/quickmsg/smqttx

1. 修改集群互踢逻辑,采用异步方式集群节点剔除,剔除逻辑是统一ClientId只能建立唯一连接。

2. 修改多数据源由单例模式改成多实例,避免多数据源配置加载出现非线程安全问题

3. 修改服务端SSL/TLS证书加密时候未开启客户端认证导致的安全问题

快速开始

<dependency>
   <artifactId>smqttx-spring-boot-starter</artifactId>
   <groupId>io.github.quickmsg</groupId>
   <version>2.0.11</version>
</dependency>
<!--屏蔽h2版本冲突-->
<dependency>
  <groupId>com.h2database</groupId>
  <artifactId>h2</artifactId>
  <version>1.4.197</version>
</dependency>

配置文件

application.yaml中添加配置

smqtt:
  logLevel: INFO # 系统日志
  tcp: # tcp配置
    port: 1883 # mqtt端口号
    wiretap: false  # 二进制日志 前提是 smqtt.logLevel = DEBUG
    bossThreadSize: 8  # boss线程 默认=cpu核心数
    workThreadSize: 16 # work线程 默认=cpu核心数*2
    businessThreadSize: 32 # 业务线程数 默认=cpu核心数*10
    businessQueueSize: 100000 #业务队列 默认=100000
    messageMaxSize: 4194304 # 接收消息的最大限制 默认4194304(4M)
    lowWaterMark: 4000000 # 不建议配置 默认 32768
    highWaterMark: 80000000 # 不建议配置 默认 65536
    # globalReadWriteSize: 10000000,100000000  全局读写大小限制
    # channelReadWriteSize: 10000000,100000000 单个channel读写大小限制
    options:
      SO_BACKLOG: 2000
  auth:
    fixed:
      username: smqtt
      password: smqtt
  http: # http相关配置 端口固定60000
    host: 127.0.0.1
    accessLog: true # http访问日志
    admin: # 后台管理配置
      username: smqtt # 访问用户名
      password: smqtt # 访问密码
  ws: # websocket配置
    enable: true # 开关
    port: 8999 # 端口
    path: /mqtt # ws 的访问path mqtt.js请设置此选项
  cluster: # 集群配置
    addresses: ["127.0.0.1"]
  meter:
    meterType: PROMETHEUS # INFLUXDB , PROMETHEUS

启动服务

在SpringBootApplication启动类上添加 @EnableMqttServer ,然后启动服务即可

猜你喜欢

转载自www.oschina.net/news/261968/smqttx-2-0-11