@@ -148,6 +148,7 @@ docker 环境安装好后,执行 `docker-compose -f ./docker-compose.yml up`
148148| Docker Pull Command | 说明 |
149149| -------------------------------------- | -------------------------------------- |
150150| ` docker pull fantasywujun/mqttx:1.2.0 ` | 基于 ` jdk17.0.1 ` 的 ` mqttx:1.2.0 ` 版本 |
151+ | ` docker pull fantasywujun/mqttx:1.2.1 ` | 基于 ` jdk17.0.1 ` 的 ` mqttx:1.2.1 ` 版本 |
151152
152153** docker-compose** 文件内容:
153154
@@ -159,10 +160,12 @@ services:
159160 image : redis
160161 mqttx :
161162 container_name : mqttx
162- image : fantasywujun/mqttx:1.2.0
163+ image : fantasywujun/mqttx:1.2.1
164+ environment :
165+ mqttx.max-bytes-in-message : 10485760
166+ mqttx.web-socket.enable : false
163167 ports :
164168 - 1883:1883
165- - 8083:8083
166169` ` `
167170
168171
@@ -444,6 +447,7 @@ mqttx:
444447
4454481. `mqttx.auth.url` : 提供认证服务的接口地址。
4464492. `mqttx.auth.timeout` : ` HttpClient` 请求超时
450+ 3. `mqttx.auth.is-mandatory` : 是否强制要求校验用户名与密码
447451
448452用户在配置文件中声明 `mqtt.auth.url` 后,对象 `com.jun.mqttx.service.impl.DefaultAuthenticationServiceImpl` 使用 `HttpClient` 发出 `POST` 请求给 `mqttx.auth.url`。
449453
@@ -532,49 +536,50 @@ Content-Length: 91
532536
533537配置项说明:
534538
535- | 配置 | 默认值 | 说明 |
536- |---------------------------------------------| ---------------------------------| -------------------------------------------------------------------------- |
537- | `mqttx.version` | 取自 `pom.xml` | 版本 |
538- | `mqttx.broker-id` | 取自 `pom.xml` | 应用标志, 唯一 |
539- | `mqttx.heartbeat` | `60s` | 初始心跳,会被 conn 消息中的 keepalive 重置 |
540- | `mqttx.host` | `0.0.0.0` | 监听地址 |
541- | `mqttx.so-backlog` | `512` | tcp 连接处理队列 |
542- | `mqttx.enable-topic-sub-pub-secure` | `false` | 客户订阅/发布主题安全功能,开启后将限制客户端发布/订阅的主题 |
539+ | 配置 | 默认值 | 说明 |
540+ | ------------------------------------------- | ------------------------------- | ------------------------------------------------------------ |
541+ | `mqttx.version` | 取自 `pom.xml` | 版本 |
542+ | `mqttx.broker-id` | 取自 `pom.xml` | 应用标志, 唯一 |
543+ | `mqttx.heartbeat` | `60s` | 初始心跳,会被 conn 消息中的 keepalive 重置 |
544+ | `mqttx.host` | `0.0.0.0` | 监听地址 |
545+ | `mqttx.so-backlog` | `512` | tcp 连接处理队列 |
546+ | `mqttx.enable-topic-sub-pub-secure` | `false` | 客户订阅/发布主题安全功能,开启后将限制客户端发布/订阅的主题 |
543547| `mqttx.enable-inner-cache` | `true` | 发布消息每次都需要查询 redis 来获取订阅的客户端列表。开启此功能后,将在内存中建立一个主题-客户端关系映射, 应用直接访问内存中的数据即可 |
544- | `mqttx.ignore-client-self-pub` | `true` | 忽略 client 发送给自己的消息(当 client 发送消息给自己订阅的主题) |
545- | `mqttx.max-bytes-in-message` | `8092` | mqttx 允许接收的最大报文载荷,单位 `byte`. |
546- | `mqttx.serialize-strategy` | `json` | `broker` 采用的序列化策略,**集群策略*必须*一致**。 |
547- | `mqttx.redis.cluster-session-hash-key` | `mqttx.session.key` | redis map key;用于集群的会话存储 |
548- | `mqttx.redis.topic-prefix` | `mqttx:topic:` | 主题前缀; topic <==> client 映射关系保存 |
549- | `mqttx.redis.retain-message-prefix` | `mqttx:retain:` | 保留消息前缀, 保存 retain 消息 |
550- | `mqttx.redis.pub-msg-set-prefix` | `mqttx:client:pubmsg:` | client pub消息 redis set 前缀; 保存 pubmsg,当收到 puback 获取 pubrec 后删除 |
551- | `mqttx.redis.pub-rel-msg-set-prefix` | `mqttx:client:pubrelmsg:` | client pubRel 消息 redis set 前缀;保存 pubrel 消息 flag,收到 pubcom 消息删除 |
552- | `mqttx.redis.topic-set-key` | `mqttx:alltopic` | topic 集合,redis set key 值;保存全部主题 |
553- | `mqttx.redis.message-id-prefix` | `mqttx:messageId:` | 非 `cleanSession` client 的 `messageId`, 使用 `redis INCR` 指令 |
554- | `mqttx.redis.client-topic-set-prefix` | `mqttx:client:topicset:` | client 订阅的主题 redis set 前缀; 保存 client 订阅的全部主题 |
555- | `mqttx.cluster.enable` | `false` | 集群开关 |
556- | `mqttx.cluster.inner-cache-consistancy-key` | `mqttx:cache_consistence` | 应用启动后,先查询 redis 中无此 key 值,然后在检查一致性 |
557- | `mqttx.cluster.type` | `redis` | 集群消息中间件类型 |
558- | `mqttx.ssl.enable` | `false` | ssl 开关 |
559- | `mqttx.ssl.client-auth` | `NONE` | 客户端证书校验 |
560- | `mqttx.ssl.key-store-location` | `classpath : tls/mqttx.keystore` | keyStore 位置 |
561- | `mqttx.ssl.key-store-password` | `123456` | keyStore 密码 |
562- | `mqttx.ssl.key-store-type` | `pkcs12` | keyStore 类别 |
563- | `mqttx.socket.enable` | `true` | socket 开关 |
564- | `mqttx.socket.port` | `1883` | socket 监听端口 |
565- | `mqttx.websocket.enable` | `false` | websocket 开关 |
566- | `mqttx.websocket.port` | `8083` | websocket 监听端口 |
567- | `mqttx.websocket.path` | `/mqtt` | websocket path |
568- | `mqttx.share-topic.enable` | `true` | 共享主题功能开关 |
569- | `mqttx.share-topic.share-sub-strategy` | `round` | 负载均衡策略, 目前支持随机、轮询、哈希 |
570- | `mqttx.sys-topic.enable` | `false` | 系统主题功能开关 |
571- | `mqttx.sys-topic.interval` | `60s` | 定时发布间隔 |
572- | `mqttx.message-bridge.enable` | `false` | 消息桥接功能开关 |
573- | `mqttx.message-bridge.topics` | `null` | 需要桥接消息的主题列表 |
574- | `mqttx.rate-limiter.enable` | `false` | 主题限流开关 |
575- | `mqttx.rate-limiter.token-rate-limit` | | 参见 [主题限流支持](#410-主题限流支持) 配置举例说明 |
576- | `mqttx.auth.url` | `null` | mqtt conn username/password 认证服务接口地址 |
577- | `mqttx.auth.timeout` | `3s` | readTimeout |
548+ | `mqttx.ignore-client-self-pub` | `true` | 忽略 client 发送给自己的消息(当 client 发送消息给自己订阅的主题) |
549+ | `mqttx.max-bytes-in-message` | `8092` | mqttx 允许接收的最大报文载荷,单位 `byte`. |
550+ | `mqttx.serialize-strategy` | `json` | `broker` 采用的序列化策略,**集群策略*必须*一致**。 |
551+ | `mqttx.redis.cluster-session-hash-key` | `mqttx.session.key` | redis map key;用于集群的会话存储 |
552+ | `mqttx.redis.topic-prefix` | `mqttx:topic:` | 主题前缀; topic <==> client 映射关系保存 |
553+ | `mqttx.redis.retain-message-prefix` | `mqttx:retain:` | 保留消息前缀, 保存 retain 消息 |
554+ | `mqttx.redis.pub-msg-set-prefix` | `mqttx:client:pubmsg:` | client pub消息 redis set 前缀; 保存 pubmsg,当收到 puback 获取 pubrec 后删除 |
555+ | `mqttx.redis.pub-rel-msg-set-prefix` | `mqttx:client:pubrelmsg:` | client pubRel 消息 redis set 前缀;保存 pubrel 消息 flag,收到 pubcom 消息删除 |
556+ | `mqttx.redis.topic-set-key` | `mqttx:alltopic` | topic 集合,redis set key 值;保存全部主题 |
557+ | `mqttx.redis.message-id-prefix` | `mqttx:messageId:` | 非 `cleanSession` client 的 `messageId`, 使用 `redis INCR` 指令 |
558+ | `mqttx.redis.client-topic-set-prefix` | `mqttx:client:topicset:` | client 订阅的主题 redis set 前缀; 保存 client 订阅的全部主题 |
559+ | `mqttx.cluster.enable` | `false` | 集群开关 |
560+ | `mqttx.cluster.inner-cache-consistancy-key` | `mqttx:cache_consistence` | 应用启动后,先查询 redis 中无此 key 值,然后在检查一致性 |
561+ | `mqttx.cluster.type` | `redis` | 集群消息中间件类型 |
562+ | `mqttx.ssl.enable` | `false` | ssl 开关 |
563+ | `mqttx.ssl.client-auth` | `NONE` | 客户端证书校验 |
564+ | `mqttx.ssl.key-store-location` | `classpath : tls/mqttx.keystore` | keyStore 位置 |
565+ | `mqttx.ssl.key-store-password` | `123456` | keyStore 密码 |
566+ | `mqttx.ssl.key-store-type` | `pkcs12` | keyStore 类别 |
567+ | `mqttx.socket.enable` | `true` | socket 开关 |
568+ | `mqttx.socket.port` | `1883` | socket 监听端口 |
569+ | `mqttx.websocket.enable` | `false` | websocket 开关 |
570+ | `mqttx.websocket.port` | `8083` | websocket 监听端口 |
571+ | `mqttx.websocket.path` | `/mqtt` | websocket path |
572+ | `mqttx.share-topic.enable` | `true` | 共享主题功能开关 |
573+ | `mqttx.share-topic.share-sub-strategy` | `round` | 负载均衡策略, 目前支持随机、轮询、哈希 |
574+ | `mqttx.sys-topic.enable` | `false` | 系统主题功能开关 |
575+ | `mqttx.sys-topic.interval` | `60s` | 定时发布间隔 |
576+ | `mqttx.message-bridge.enable` | `false` | 消息桥接功能开关 |
577+ | `mqttx.message-bridge.topics` | `null` | 需要桥接消息的主题列表 |
578+ | `mqttx.rate-limiter.enable` | `false` | 主题限流开关 |
579+ | `mqttx.rate-limiter.token-rate-limit` | | 参见 [主题限流支持](#410-主题限流支持) 配置举例说明 |
580+ | `mqttx.auth.url` | `null` | mqtt conn username/password 认证服务接口地址 |
581+ | `mqttx.auth.timeout` | `3s` | readTimeout |
582+ | `mqttx.auth.is-mandatory` | `false` | 是否必须验证 `conn` 报文中的用户名与密码 |
578583
579584# ## 6.2 版本说明
580585
0 commit comments