Skip to content

Tags: smartboot/smart-mqtt

Tags

v1.3.0

Toggle v1.3.0's commit message

> 经过深度打磨与性能优化,我们很高兴地宣布 **smart-mqtt v1.3.0** 正式发布!本次版本在保持轻量级优势的基础上,带来了两大核心升级:**内存全面优化** 和 **全新集群插件(cluster-plugin)上线**。
## 🔧 核心更新亮点

### ✅ 内存优化全面升级

- 重构 Topic 树存储结构,减少冗余对象创建
- 优化订阅关系引用管理机制
- 引入缓存复用策略,降低 GC 频率

实测显示,在百万级 Topic 场景下,整体内存占用降低约 **30%~40%**,显著提升系统承载能力。

### ✅ 全新集群插件上线(cluster-plugin)

- 支持多节点部署(核心节点 + 工作节点)
- 节点间通过 HTTP 同步状态与转发消息
- 支持分布式消息路由与多种队列策略
- 动态发现并管理集群节点


### ✅ 其他改进

- 升级 feat 至 1.1.4,引入 MCP 特性,为打造智能 Broker 打基础
- 提升 h2 数据库服务稳定性
- 移除基于 IP 的地理识别功能
- Web 后台默认启用 GZIP 压缩

## 📦 组件升级

| 组件 | 升级至版本 |
|------|------------|
| feat | 1.1.4      |

## ⚙️ 集群插件使用说明

将插件放入 `plugins` 目录,并在 `plugin.yaml` 中配置如下参数:

```yaml
core: true                # 是否为核心节点
host: 0.0.0.0             # 核心节点监听地址
port: 8884                # 核心节点监听端口
clusters:                 # 集群节点列表
  - http://core1:8884
  - http://core2:8884
```

启动服务后插件会自动加载,详情请参考插件文档。

## 🌐 获取方式

- GitHub 地址:[https://github.com/smartboot/smart-mqtt](https://github.com/smartboot/smart-mqtt)
- Gitee 地址:[https://gitee.com/smartboot/smart-mqtt](https://gitee.com/smartboot/smart-mqtt)

## 🐳 快速部署(Docker)

```bash
docker run --name smart-mqtt \
  -p 18083:18083 \
  -p 1883:1883 \
  -d smartboot/smart-mqtt:latest
```

- Web 控制台访问地址:`http://localhost:18083`
- MQTT 通信端口:`1883`

v1.2.0

Toggle v1.2.0's commit message

# 🚀 smart-mqtt v1.2.0 正式发布

> 经过持续打磨与优化,我们很高兴地宣布 **smart-mqtt v1.2.0** 正式发布!作为 Java 生态中最轻量级的 MQTT Broker 解决方案,本次版本聚焦于**性能优化与资源管理增强**,进一步提升了系统在高并发场景下的稳定性与效率。

## 🔧 核心更新亮点

### ✅ 性能与稳定性提升

- **异步 + 批处理机制**:优化指标数据入库流程,降低数据库写入压力。
- **智能资源回收**:自动识别闲置 Topic 并释放内存资源;h2 数据库默认启用文件持久化模式,避免长期运行内存过高。
- **订阅结构重构**:优化大规模 Topic 订阅场景下的处理效率。

### ✅ 功能优化与修复

- 修复 MqttClient 在特定情况下丢失 version 字段的问题
- 规范 retain 消息实现逻辑
- 改进启动日志输出体验
- 增强新版本检测与压测工具重连功能

### ✅ 依赖精简

- 移除 `commons-lang` 和 `slf4j` 等第三方依赖包,减少潜在冲突,进一步减小发行包体积。

## 📦 组件升级

| 组件       | 升级至版本 |
|------------|------------|
| feat       | 1.1.0      |
| smart-socket | 1.5.69   |

## 🌐 获取方式

- GitHub 镜像地址:[https://github.com/smartboot/smart-mqtt](https://github.com/smartboot/smart-mqtt)
- Gitee 主仓库:[https://gitee.com/smartboot/smart-mqtt](https://gitee.com/smartboot/smart-mqtt)

## 🐳 快速部署(Docker)

```bash
docker run --name smart-mqtt \
  -p 18083:18083 \
  -p 1883:1883 \
  -d smartboot/smart-mqtt:latest
```

- Web 控制台访问地址:`http://localhost:18083`
- MQTT 通信端口:`1883`

v1.1.0

Toggle v1.1.0's commit message

- 发布 smart-mqtt 插件开发规范组件:smart-mqtt-plugin-spec
- 发布 smart-mqtt plugin 本地运行 maven 插件,满足本地开发调试需求
- 完成 smart-mqtt-broker 插件式运行环境改造
- 发布插件:simple-auth-plugin,一个简单的MQTT认证插件,提供基本的用户名密码认证功能
- 发布插件:redis-bridge-plugin,一个用于MQTT消息与Redis集成的桥接插件
- 发布插件:websocket-plugin,允许客户端通过WebSocket连接进行MQTT通信
- 发布插件:memory-session-plugin,为MQTT broker提供基于内存的会话状态管理功能
- smart-mqtt-broker 移除 feat 依赖,精简发行包体积
- smart-socket 升级至 1.5.60
- fastjson2 升级至 2.0.57
- feat 升级至 0.8.9

v0.42

Toggle v0.42's commit message

1. 改进消息队列的类结构设计,精简内存开销。
1. 重构消息推送的相关接口设计
1. 补充大量的代码注释。
1. feat升级至v0.8.3
1. smart-socket升级至v1.5.58

v0.41

Toggle v0.41's commit message
1. 开源压测模块: smart-mqtt-bench。

1. 开源企业版后台模块:smart-mqtt-plugin-enterprise
1. BrokerConfigure 重命名为:Options
1. MqttClientConfigure 重命名为:Options
1. 修复特定场景下共享订阅失效问题。
1. 重构 MQTT Client 接口设计。
1. 废弃接口:BrokerContext@bundle
1. 废弃接口:BrokerContext@getBundle

v0.40

Toggle v0.40's commit message
1. 优化消息推送模型,提升通信性能。

1. 增加消息队列历史数据清退功能,节省服务内存开销。
1. 增加消息推送率指标的检测。
1. 升级 smart-socket,启用柔性内存池模型。
1. 容器环境支持时区设置功能,默认:上海
1. 修复某些场景下的空指针问题。
1. 数据库表:connection 增加索引配置

v0.37

Toggle v0.37's commit message
提升性能至:790万/秒

v0.36

Toggle v0.36's commit message
1. 降低控制台指标监控打印频次。

2. 新增共享订阅特性。
3. 调整 Topic 编解码算法。