単一のサブスクリプションを持つ単純なトピックがあります。メッセージのサイズを小さくしておくと (50kb 以下で問題ありません)、一貫して受信メッセージを送信できます。
50kb を超える大きなサイズのメッセージを送信しようとすると、メッセージは正常に送信されますが、受信されません。
メッセージは配信不能キューにありません。メッセージを放棄し、数回再試行した後、そのサブキューからメッセージを受信しましたが、これらのメッセージもそこに表示されません。
メッセージは実にシンプルです。
[DataContract]
public class TopicMessage
{
[DataMember]
public DateTime SentAt { get; set; }
[DataMember]
public string Payload { get; set; }
}
特定のサイズのメッセージの作成は次のとおりです。
var topicMessage = new TopicMessage() ;
topicMessage.Payload = new string('z', sizeInKb * 1024);
最後に、64kb のメッセージを送信して失敗させると、以降のすべてのメッセージが受信されなくなります。
送受信のコードは非常に「こんにちは」ですが、参考になればもっと投稿できます。
この質問は私の問題と非常によく似ていますが、答えはありません。サブスクリプションを削除することは有効な解決策とは思えません。 Azure トピックからメッセージを受信すると null が生成され、トピックには未読メッセージがあります