私はASP.NET Web APIからアイテムをAzure Storage Queueに送信しています。ユーザーにキュー内のアイテムの位置に関するフィードバックを提供したいと思います彼らが戻ったり来たりすると、アイテムの位置を更新することができます。Azureストレージキューのサイズ/位置を取得する方法
ないことがここで問題と大いに関係しているが、これは
CloudStorageAccount storageAccount = CloudStorageAccount.Parse(ConfigHelper.GetAzureStorage());
CloudQueueClient queueClient = storageAccount.CreateCloudQueueClient();
CloudQueue queue = queueClient.GetQueueReference("my-queue");
await queue.CreateIfNotExistsAsync();
var messageJson = JsonConvert.SerializeObject(item);
CloudQueueMessage cloudQueueMessage = new CloudQueueMessage(messageJson);
await queue.AddMessageAsync(cloudQueueMessage);
は、だから私は周りCloudQueueClient
とCloudQueue
を突いてきたキュー内のアイテムを配置するために用いた方法イムですが、すべて私が見つけることができることCloudQueue.ApproximateMessageCount
は常にnullを返しました。
私はちょっと試してみましたが、これはいつも始まっています。スタートガイドでは、キューのアイテムの位置を取得する方法について具体的に指摘しています。
私はちょっと待ち構えていますが、キュー内のすべての項目が処理に同じ時間を費やし、実際にApproximateMessageCountがどのように動作しているかを実際に知っているので、時間を見積もってユーザーに返します。Thanks heaps – Toxicable
@毒性:主に分散キューが動作するためです。メッセージの順序は保証されていません。それは先入れ先出しに近いでしょうが、100%ではないかもしれないので、少しぼやけているのでその位置を示す数字を与えることはできません – porges
ああ、わかりました。私はそれが分散キューであることを知らなかった、それをクリアするためのおかげで、ありがとうのおかげで – Toxicable