NotifyPublish
を介してリスナーを登録していて、非同期で確認を取得しています。ack= falseの場合、メッセージを再公開するか、それに基づいて動作しますが、このリスナーチャネルから配信タグを取得し、これがどのペイロードかわかりません。配信タグはです。
https://github.com/streadway/amqp/blob/v1.0.0/confirms.go#L36を返すことができるように見えますが、これは特定のチャネルの配信タグのように見えhttpsでは無視してい
こんにちは@ kamal-github
私が公開しているチャンネルで確認が送信されることを思い出すまで、私は同じことを不思議に思っていましたが、そのチャンネルで公開しているものについてのみ...
すなわち。 DeliveryTag = 1の確認通知は、チャネルなどで公開した最初のメッセージに対するものです...追跡するのは簡単です(ただし、Publishがそのカウンターを返す可能性があることに同意します)。
@chrisDeFouRire同じカウンターを維持することで、同時実行の問題が発生する可能性があるのではないかと心配しています。 Javaクライアントのようなメソッドを追加してみませんか。 getNextSequenceNumber()
? https://www.rabbitmq.com/tutorials/tutorial-seven-java.html
@ kamal-github私はあなたの解決策が好きですが、私はそれに投票することしかできません👍
このクライアントは、パブリックAPIの変更を理論的に破ることさえも、非常に保守的なアプローチを使用しています。 シーケンスカウンターリーダーを公開する—これがその方法です。
カウンターを返す新しい関数を紹介するPRを送信するか、既に存在する場合はドキュメントの更新を送信してください。 Channel.Publish
変更(戻り値など)を壊すことは、このクライアントにとって問題外です。
私はそれが(カマル-githubのによる)PR#478はまったく同じものだと思います@michaelklishin
@chrisDeFouRire @michaelklishin https://github.com/streadway/amqp/pull/478私はすでにこのためのPRを作成していると述べました。 確認してください。 :)
@michaelklishin
それをマージするとき。 https://github.com/streadway/amqp/pull/478
@chrisDeFouRire @michaelklishin#478私はすでにこのためにPRを作成していると述べました。 確認してください。 :)
マージするとき