モジュール 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 番号 サイズ;
デフォルト
mqtt_buffers 100 1k;
コンテキスト streamserver

このディレクティブはバージョン 1.25.1 で登場しました。

単一の接続に対して MQTT メッセージを処理するために使用されるバッファーの 番号サイズ を設定します。

構文 mqtt_rewrite_buffer_size サイズ;
デフォルト
mqtt_rewrite_buffer_size 4k|8k;
コンテキスト server

このディレクティブはバージョン 1.25.1 以降使用されません。mqtt_buffers ディレクティブを使用してください。

変更されたメッセージを書き込むために使用されるバッファーの サイズ を設定します。デフォルトでは、バッファーサイズは 1 つのメモリページと同じサイズです。これはプラットフォームによって 4K または 8K のいずれかですが、小さくすることもできます。

構文 mqtt_set_connect フィールド ;
デフォルト
コンテキスト server

メッセージの フィールド を、接続メッセージの に設定します。次のフィールドがサポートされています: clientidusernamepassword。値には、テキスト、変数、それらの組み合わせを含めることができます。

複数の mqtt_set_connect ディレクティブを同じレベルで指定できます

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