0

C#でRabbitMQフロー制御を有効にする方法を知っている人はいますか?私はこのようなことを試みました:

    channel = connection.CreateModel();
    channel.ChannelFlow(true);
    channel.FlowControl += new RabbitMQ.Client.Events.FlowControlEventHandler(channel_FlowControl);

基本的に、RabbitMQ接続がFlowControlモードになったときに「channel_FlowControl」イベントがトリガーされることを期待しますが、どういうわけかそれは起こりません。

誰かが私がそれを正しく処理する方法を知っていますか?

前もって感謝します

4

1 に答える 1

0

さて、本当にとのいくつかの議論の後!!! RabbitMQ の皆さん、答えは簡単です。

できません

C# ドライバーには使用可能なコールバックがないため、推奨される方法は、小さな内部非同期プレキューを使用してそこにデータを配置し、非同期スレッドがそのキューを読み取り、rabbit に公開することです。

そうすれば、うさぎの速度が遅くなり、入力も遅くする必要がある場合に、内部キューが大きくなり、その成長を検出してそれに応じて行動できるため、気付くでしょう。

繰り返しになりますが、RabbitMQ メーリング リストの親切な人々に感謝します。

于 2012-08-09T09:37:50.827 に答える