模块 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 数量 大小;
默认值
mqtt_buffers 100 1k;
上下文 stream, server

此指令出现在 1.25.1 版本中。

为单个连接设置用于处理 MQTT 消息的缓冲区的数量大小

语法 mqtt_rewrite_buffer_size 大小;
默认值
mqtt_rewrite_buffer_size 4k|8k;
上下文 服务器

此指令自 1.25.1 版本起已弃用。应改用 mqtt_buffers 指令。

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

语法 mqtt_set_connect 字段 ;
默认值
上下文 服务器

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

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

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