{"repo":"Amazingwujun/mqttx","free":true,"listed":false,"github":"https://github.com/Amazingwujun/mqttx","clone":"git clone https://github.com/Amazingwujun/mqttx.git","description":"MQTTX Project 完整实现 mqttv3.1.1 协议，旨在提供易于使用且性能优异的 mqtt broker","language":"Java","stars":344,"topics":["mqtt","netty","docker","cluster","springboot","broker","share-topic","mqttx","iot-application","websocket"],"license":"Apache-2.0","category":"deployment-docker-iac","readme_excerpt":"MQTTX Project 中文 English - 1 介绍 - 1.1 快速开始 - 1.2 项目依赖 - 1.3 线上实例 - 2 架构 - 2.1 目录结构 - 3 docker 启动 - 4 功能说明 - 4.1 qos 支持 - 4.2 topicFilter 支持 - 4.3 集群支持 - 4.4 ssl 支持 - 4.5 topic 安全支持 - 4.6 共享主题支持 - 4.7 websocket 支持 - 4.8 系统主题 - 4.8.1 状态主题 - 4.8.2 功能主题 - 4.9 消息桥接支持 - 4.10 主题限流支持 - 4.11 消息持久化支持 - 4.12 基础认证支持 - 5 开发者说 - 6 附表 - 6.1 配置项 1 介绍 Mqttx 基于 MQTT v3.1.1 协议开发，旨在提供 易于使用 且 性能优越 的 mqtt broker 。 注意：分支 v1.2 要求 JDK17 , 其它分支要求 JDK8 关联项目: Mqttx-Client 实现&使用极为简单的 mqttv3.1.1 客户端. 1.1 快速开始 想通过 docker 快速体验？见 docker 启动 1. 打包 - 开发模式： 1. 启动 redis 实例 2. 运行 mvnw -P dev -DskipTests=true clean package 2. 运行 1. 运行命令： java -jar mqttx-1.0.5.BETA.jar 图例： 1.2 项目依赖 - [x] Redis ： 集群消息、消息持久化 - [x] Kafka ：桥接消息支持，集群消息（可选功能） 其它说明： 1. 项目使用了 lombok ，使用 ide 请安装对应的插件 开发工具建议使用 Intellij IDEA :blush: 举例： idea 需要安装插件 Lombok , settings Build,Execution,Deployment Compiler Annotation Processor 开启 Enable annotation processing 1.3 线上实例 云服务到期，实例已经无法访问，有朋友赞助吗/(ㄒoㄒ)/ 云端部署了一个 mqttx 单例服务，可供功能测试： 1. 不支持 ssl 2. 开启了 websocket , 可通过 http://ws.tool.tusk.link/ 测试，仅需将域名修改为： 119.45.158.51 (端口、地址不变) 3. 支持共享订阅功能 4. 部署版本 v1.0.6.RELEASE 2 架构 mqttx 支持客户端认证、topic 发布/订阅鉴权功能，如果需要配套使用，建议的架构如下图： 客户认证服务由使用者自行实现 内部实现框架关系(仅列出关键项)： 2.1 目录结构 3 docker 启动 镜像已上传至 docker-hub , 访问：fantasywujun/mqttx - Docker Hub 全部镜像 docker 环境安装好后，执行 docker-compose -f ./docker-compose.yml up 启动, 效果见下图： Docker Pull Command 说明 ---------------------------------------- ----------------------------------- docker pull fantasywujun/mqttx:1.2.0 基于 jdk17.0.1 的 mqttx:1.2.0 版本","default_branch":null,"files":null,"tree":[],"storefront":"/r/Amazingwujun","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/Amazingwujun/mqttx/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}