1、smart-mqtt 简介
smart-mqtt 是用 java 语言开发的 MQTT Broker 服务,也是 smartboot 组织下首款真正意义上面向物联网的解决方案。旨在帮助企业以较低的成本快速搭建稳定、可靠的物联网服务,助力万物互联互通。
smartboot开源组织,一个容易被误认为是在“重复造轮子”的低调组织。曾获得 2020 年度 OSC 中国开源项目「优秀 Gitee 组织 」荣誉。
该组织内的明星项目包括:
smart-socket
历时5年精炼出2千多行代码,轻松实现百万级长连接的 AIO 通信框架。smart-http
基于 smart-socket 实现的 HTTP/1.1 web服务。smart-servlet
基于 smart-http 实现的 Servlet 3.1 容器服务。smart-broker
基于 smart-socket 实现的 MQTT 3.1.1/5.0 Broker 服务。smart-flow
一款具备可观测性的轻量级业务编排框架。组织地址:?https://smartboot.tech/
代码仓库:?https://gitee.com/smartboot
2、 版本更新
这个版本在功能上的改动比较小,过去一个月花了比较多时间思考如何建设 mqtt 平台的可观测性,这项能力对企业而言是非常重要的。
mqtt broker作为设备数据上云的流量入口,是最能直接反应企业实际业务情况之处,例如:接入的设备量、设备运行状况、流量调度,异常感知与上报等。虽然 smart-mqtt 还处于早期阶段,但未来将会面临的各类复杂场景值得当下去思考和规划。
在这个版本中,smart-mqtt 基本完成了指标模型的建立,在社区版中以内存模式提供服务,而企业版则支持数据库持久化。当然,如今做的还远远不够,将会在后续版本中持续优化。
本次更新内容:
【社区版】
-
smart-socket 版本调整至:1.5.24。
-
smart-http 版本升级值:1.1.21。
-
完善 openAPI 定义,并提供部分接口实现。
-
完善 MQTT5 协议规范的实现。
-
Broker 支持节点命名,用于集群模式下区分节点的唯一性。
-
提供内存模式的指标统计功能。
-
调整消息推送服务与插件模块的初始化顺序。
-
MQTT Client 支持飞行窗口,提供更稳定可靠的通信服务。
-
消息序列化日志打印调整成 JSON 格式输出。
-
改进后台管理系统的交互体验。
【企业版】
-
新增 ChatGPT 插件,实现与人工智能对话。
-
新增 Database 插件,用于持久化Broker运行时数据以供后台管理系统展示。(适配数据库:H2、MySQL)
-
实现现存所有的 openAPI 接口。
chatGPT 算是 smart-mqtt v0.15 企业版中的小彩蛋。在之前的版本中已经用 smart-mqtt 搭了个简单的 IM 页面。本次再结合 chatGPT 的 openAPI 实现与人工智能对话还是颇有新意,当然因为一些众所周知的原因,体验还是略微差了些。后续将对该技术保持关注,期待能创造出更多有意思的产品。
3、如何获取 smart-mqtt
3.1 源码
-
主仓库:https://gitee.com/smartboot/smart-mqtt
-
镜像同步:https://github.com/smartboot/smart-mqtt
3.2 Maven依赖
-
mqtt broker
<dependency>
<groupId>org.smartboot.mqtt</groupId>
<artifactId>smart-mqtt-broker</artifactId>
<version>0.15</version>
</dependency>
-
mqtt client
<dependency>
<groupId>org.smartboot.mqtt</groupId>
<artifactId>smart-mqtt-client</artifactId>
<version>0.15</version>
</dependency>
3.3 发行包
-
社区版
打开浏览器访问:https://gitee.com/smartboot/smart-mqtt/releases
下载最新版。 -
企业版
成为项目赞助商,单独提供发行包(具体见下文)。
4. 关于 smart-mqtt 企业版
smart-mqtt 目前是由个人开发者在业余时间维护,暂无提供商业化服务的计划。
出于项目的可持续发展需要,我们在 smart-mqtt 社区版的基础上,丰富了一些企业级功能。如果贵公司认可 smart-mqtt 的价值,可以通过成为赞助商获得企业版授权。
功能特性
-
企业版 License 认证。授权过期将无法启动服务,但并不会因授权过期影响正在运行的 Broker。
-
MQTT over WebSocket。
-
Broker 集群部署。
-
管理后台
-
ChatGPT OpenAPI插件
-
指标数据持久化(H2、MySQL)
-
未完待续...
赞助商等级
青铜赞助商 | 白银赞助商 | 黄金赞助商 | 铂金赞助商 | |
---|---|---|---|---|
赞助条件 | 加入企业支持计划 | 500元/年 | 1500元/年 | 5000元/年 |
License有效期 | 1年 | 1年 | 1 年 | 1年 |
部署指导 | - | 1次 | 1次 | 不限次数 |
Logo展示位 | - | 小号 | 中号 | 大号 |
首页Logo展示 | - | - | - | ✅ |
技术支持 | 文档 | 邮件/ISSUE |
微信/QQ/邮件 | 微信/QQ/邮件 |
白银赞助商的价值:
成本:500元/年,相当于一名初中级程序员一天的薪资。
产出效益:
增加品牌曝光率。
节省投入在 Sass云服务中的巨额资费。
结交更多物联网领域的从业者。
成为赞助商遵循双方自愿原则,我们会在能力范围内尽可能提供 smart-mqtt 相关的技术支持。与此同时因时间和精力有限,我们也并不希望由此带来额外的负担,影响到项目的正常迭代。
所以,如有疑问尽量通过 ISSUE 交流,或者通过 ISSUE 和官方文档自助寻找答案,还望理解~~
ISSUE:?https://gitee.com/smartboot/smart-mqtt/issues