私は解決しようとしている問題を抱えていますが、それはよくある問題のように思えるのでおそらくネットワークプロトコルという形で共通の解決策があります。ネットワークプロトコル多少制限があり、別のプロトコルを使用することが実際に必要な解決策である場合、Google 検索を使用してこの問題を解決するための既存のプロトコルを見つけることができません。
私の設定
MQTT を使用すると、単一のプロデューサーがトピックにメッセージをパブリッシュし、複数のコンシューマーがそのトピックをサブスクライブする可能性があります。プロデューサーは、特定の最大速度でメッセージを生成できます。各コンシューマーは、そのコンシューマー固有の速度でメッセージを処理する必要があります。コンシューマーが処理できる速度よりも速い速度でメッセージを受信した場合、メッセージを破棄するだけで済みます。
私の懸念
たとえば、1 秒あたり 100 枚の画像をプッシュできるプロデューサーがいるが、2 つのコンシューマーはそれぞれ 1 秒あたり 8 枚と 1 秒あたり 5 枚の速度でしか画像を消費できないとします。ネットワーク リソースを節約するには、ここでの最適な公開速度は 1 秒あたり 8 枚の画像になります。
私の考え
これを実現する 1 つの方法は、プロデューサーとコンシューマーを共通の「レートネゴシエーション」サービスに接続し、パブリッシャーが共有トピックにメッセージを送信するレートを変更することです。
質問
この目的のために別のプロトコルの使用を検討すべきでしょうか、それともこの懸念に対処し問題を解決するために考慮すべき共通の何か他のものはありますか?