Delayノードを使う(その3)
ここのところずっとNode-REDのサンプルを見ながら各ノードの使い方を確認しています。頭出しの記事はこちらをご確認ください。今回も前回に引き続きDelayノードを使ってみます。Delayノード編最終回です。
トピックごとに流量を制御する
今回確認するサンプルは「flows > node-red > function > delay > 05 - Limit message rate for each topic」です。トピックごとに流量を制御できるようです。
ざっと各ノードのプロパティを見てみたのですが、内容がよくわからなかったので、以下のようにDebugノードを追加・編集して各ノードが出力するmsgオブジェクトまるごと見てみます。
フローを実行すると瞬間的に10個ログ出力した後、2秒ほどタイムラグがあって、以下のように、topicの値が「apple」「orange」「banana」でそれぞれpayloadの値が「3」のログがまとめて出力されます。
ここでDelayノードのプロパティを確認してみます。動作は「メッセージの流量制限」「msg.topic毎」となっており、流量は「2秒あたり1メッセージ」、「指定した時間後にキューにある全トピックのメッセージを出力」となっています。
一方、「指定した時間後にキューにある先頭のトピックのメッセージを出力」に変更すると、3つのログが2秒毎に出力されます。今度はまとめて出力するのではなく、流量制限がかかるようです。
まとめ
今回の内容をまとめます。
- トピックごとに流量を制御できる
コメント
コメントを投稿