MassTransitは、耐久性のないメッセージが設定されている場合、永続的なメッセージを送信します

Maksym Strukov

キューにメッセージを送信しようとしています。キューはすでに存在し、非永続として構成されています。これが私のコードです:

ServiceBus = Bus.Factory.CreateUsingRabbitMq(sbc =>
            {
                sbc.PurgeOnStartup = true;
                sbc.Durable = false;
                sbc.Exclusive = false;

                sbc.Host(new Uri($"rabbitmq://{RabbitMqHost}"), cfg =>
                {
                    cfg.ConfigureRabbitMq();
                });
            });

ServiceBus.Request(
                        new Uri(serviceUri),
                        new EngineStartingMessage() { Version = ApplicationConfig.SystemVersion },
                        rCfg =>
                        {
                            rCfg.Durable = false;
                            rCfg.Timeout = new TimeSpan(0, 0, 30);
                            rCfg.Handle<EngineStartingResponse>(async hContext =>
                            {
                                //Response handling
                            });
                        });

ご覧のとおり、Durableはfalseに設定されています。ServiceBus.Requestで、次の例外が発生します。

AMQP操作が中断されました:AMQP close-reason、Peerによって開始、code = 406、text = "PRECONDITION_FAILED-inequivalent arg'durable 'for exchange'QUEUENAMEHERE' in vhost '/':received'true 'but current is'false' "、classId = 40、methodId = 10、cause =

メッセージがまだ永続的なものとして送信される理由はありますか?

クリス・パターソン

そのDurableフラグは、特定の要求メッセージをディスクに永続化してはならないことを指定するだけです。

これを修正する場合は?durable=false、serviceUriに追加して、要求を処理する受信エンドポイントで指定されているものと一致させます。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Kafka-アプリが1回だけ設定されていても、メッセージが失われ、最高の耐久性

分類Dev

リドライブポリシーが設定されていない場合、AWS SQSの失敗したメッセージはどうなりますか?

分類Dev

STOMP "expires"ヘッダーがメッセージに設定されている場合、メッセージはヘッダーに設定された有効期限を待たずにすぐに期限切れになります

分類Dev

応答が受信されない場合は、JMSメッセージを再送信します

分類Dev

耐久性のあるメールボックスが削除されたので、Akkaアクターのメッセージを回復するにはどうすればよいですか?

分類Dev

Android StudioのLogcatは、電話が接続されているときよりも多くのメッセージを送信しています(50 /秒など)。

分類Dev

SSDセクターの書き込み耐久性が制限されているのはなぜですか?

分類Dev

AspNetCore3の予期しない「サイズ制限が設定されている場合はキャッシュエントリでサイズの値を指定する必要があります」というメッセージ

分類Dev

新しいメッセージを受信すると、以前のすべてのメッセージのタイムスタンプが新しいメッセージと同じに設定されるのはなぜですか?

分類Dev

ackモードが設定されていない場合、複数のメッセージは受信されません

分類Dev

Kafkaのログ圧縮を使用して、定義された期限までに遅れていない場合に、消費者がメッセージを見逃さないようにするにはどうすればよいですか?

分類Dev

レベルがデバッグに設定されている場合でも、Serilogがデバッグメッセージを書き込まないのはなぜですか?

分類Dev

メッセンジャーの永続メニューが表示されない

分類Dev

RocketMQでは、メッセージを非同期で送信する場合、ProducerインターフェースのsendAsyncメソッドは使用されませんが、毎回新しいスレッドが作成されます。なぜですか?

分類Dev

電子メールメッセージの本文に設定されている場合、URLがクエリ文字列を追加しません

分類Dev

保存されていない番号にWhatsappメッセージを送信します

分類Dev

構成ファイルでキーと値のペアを確認し、一部の値が設定されていない場合はプロンプトメッセージを表示します

分類Dev

著者が音声チャネルにいない場合、discord.pyはメッセージを送信します

分類Dev

Windows 8.1の場合、SecureBootが正しく構成されていないというメッセージを取り除く方法はありますか?

分類Dev

HTTPメソッドがサポートされていない場合にクライアントにメッセージを送信する

分類Dev

サブスクリプションが指定されていない場合、トピックに送信されたメッセージは失われます

分類Dev

キューがまだ作成されていないときにISendEndpointを使用してメッセージを送信するときに、RequiresSessionをtrueに設定するにはどうすればよいですか?

分類Dev

大量輸送:メッセージの種類が異なる場合は、メッセージの処理順序を確認してください

分類Dev

コメントが以前に編集された場合、「編集された」永続的なメッセージがコメントの横に表示されるようにするにはどうすればよいですか?

分類Dev

コメントが以前に編集された場合、「編集された」永続的なメッセージがコメントの横に表示されるようにするにはどうすればよいですか?

分類Dev

SparkのGraphX:関与するRDDを永続化した後でも、「異なるインデックスを持つ2つのVertexPartitionsの結合/差分が遅い」というメッセージが表示されるのはなぜですか

分類Dev

DB :: selectを呼び出すと、「接続がリセットされました」というメッセージが表示されるのはなぜですか?

分類Dev

DB :: selectを呼び出すと、「接続がリセットされました」というメッセージが表示されるのはなぜですか?

分類Dev

Akkaは永続的なメッセージを削除します

Related 関連記事

  1. 1

    Kafka-アプリが1回だけ設定されていても、メッセージが失われ、最高の耐久性

  2. 2

    リドライブポリシーが設定されていない場合、AWS SQSの失敗したメッセージはどうなりますか?

  3. 3

    STOMP "expires"ヘッダーがメッセージに設定されている場合、メッセージはヘッダーに設定された有効期限を待たずにすぐに期限切れになります

  4. 4

    応答が受信されない場合は、JMSメッセージを再送信します

  5. 5

    耐久性のあるメールボックスが削除されたので、Akkaアクターのメッセージを回復するにはどうすればよいですか?

  6. 6

    Android StudioのLogcatは、電話が接続されているときよりも多くのメッセージを送信しています(50 /秒など)。

  7. 7

    SSDセクターの書き込み耐久性が制限されているのはなぜですか?

  8. 8

    AspNetCore3の予期しない「サイズ制限が設定されている場合はキャッシュエントリでサイズの値を指定する必要があります」というメッセージ

  9. 9

    新しいメッセージを受信すると、以前のすべてのメッセージのタイムスタンプが新しいメッセージと同じに設定されるのはなぜですか?

  10. 10

    ackモードが設定されていない場合、複数のメッセージは受信されません

  11. 11

    Kafkaのログ圧縮を使用して、定義された期限までに遅れていない場合に、消費者がメッセージを見逃さないようにするにはどうすればよいですか?

  12. 12

    レベルがデバッグに設定されている場合でも、Serilogがデバッグメッセージを書き込まないのはなぜですか?

  13. 13

    メッセンジャーの永続メニューが表示されない

  14. 14

    RocketMQでは、メッセージを非同期で送信する場合、ProducerインターフェースのsendAsyncメソッドは使用されませんが、毎回新しいスレッドが作成されます。なぜですか?

  15. 15

    電子メールメッセージの本文に設定されている場合、URLがクエリ文字列を追加しません

  16. 16

    保存されていない番号にWhatsappメッセージを送信します

  17. 17

    構成ファイルでキーと値のペアを確認し、一部の値が設定されていない場合はプロンプトメッセージを表示します

  18. 18

    著者が音声チャネルにいない場合、discord.pyはメッセージを送信します

  19. 19

    Windows 8.1の場合、SecureBootが正しく構成されていないというメッセージを取り除く方法はありますか?

  20. 20

    HTTPメソッドがサポートされていない場合にクライアントにメッセージを送信する

  21. 21

    サブスクリプションが指定されていない場合、トピックに送信されたメッセージは失われます

  22. 22

    キューがまだ作成されていないときにISendEndpointを使用してメッセージを送信するときに、RequiresSessionをtrueに設定するにはどうすればよいですか?

  23. 23

    大量輸送:メッセージの種類が異なる場合は、メッセージの処理順序を確認してください

  24. 24

    コメントが以前に編集された場合、「編集された」永続的なメッセージがコメントの横に表示されるようにするにはどうすればよいですか?

  25. 25

    コメントが以前に編集された場合、「編集された」永続的なメッセージがコメントの横に表示されるようにするにはどうすればよいですか?

  26. 26

    SparkのGraphX:関与するRDDを永続化した後でも、「異なるインデックスを持つ2つのVertexPartitionsの結合/差分が遅い」というメッセージが表示されるのはなぜですか

  27. 27

    DB :: selectを呼び出すと、「接続がリセットされました」というメッセージが表示されるのはなぜですか?

  28. 28

    DB :: selectを呼び出すと、「接続がリセットされました」というメッセージが表示されるのはなぜですか?

  29. 29

    Akkaは永続的なメッセージを削除します

ホットタグ

アーカイブ