模块 ngx_stream_mqtt_filter_module

配置示例
指令
     mqtt
     mqtt_buffers
     mqtt_rewrite_buffer_size
     mqtt_set_connect

模块 ngx_stream_mqtt_filter_module(1.23.4 版本)提供了对消息队列遥测传输协议(MQTT)版本 3.1.15.0 的支持。

该模块作为我们的 商业订阅 的一部分提供。

配置示例

listen            127.0.0.1:18883;
proxy_pass        backend;
proxy_buffer_size 16k;

mqtt             on;
mqtt_set_connect clientid "$client";
mqtt_set_connect username "$name";

指令

语法: mqtt on | off;
默认值:
mqtt off;
上下文: stream, server

启用给定虚拟服务器的 MQTT 协议。

语法: mqtt_buffers number size;
默认值:
mqtt_buffers 100 1k;
上下文: stream, server

该指令自版本 1.25.1 起可用。

设置用于处理 MQTT 消息的缓冲区(单个连接)的 numbersize

语法: mqtt_rewrite_buffer_size size;
默认值:
mqtt_rewrite_buffer_size 4k|8k;
上下文: server

该指令自版本 1.25.1 起已过时。应使用 mqtt_buffers 指令。

设置用于写入修改后消息的缓冲区 size。默认情况下,缓冲区大小等于一个内存页面。这通常为 4K 或 8K,具体取决于平台。但也可以更小。

语法: mqtt_set_connect field value;
默认值:
上下文: server

为 CONNECT 消息将 field 设置为给定的 value。支持以下字段:clientidusernamepassword。值可以包含文本、变量及其组合。

在同一级别上可以指定多个 mqtt_set_connect 指令:

mqtt_set_connect clientid "$client";
mqtt_set_connect username "$name";