模块 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;
上下文 streamserver

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

语法 mqtt_buffers number size;
默认值
mqtt_buffers 100 1k;
上下文 streamserver

此指令出现在 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

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

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

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