Azure   发布时间:2019-11-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Azure 基础:Queue Storage大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

title="Azure 基础:Queue Storage" alt="Azure 基础:Queue Storage" src="https://cn.js-code.com/res/2019/02-09/09/2301dd0e9a0e2718c58c330242e129f0.png" >

中介绍了 File Storage 的基本用法,本文将介绍 Queue Storage 的主要使用方法。

Azure Queue Storage的结构

Azure 基础:Queue Storage

http://.queue.core.windows.net/

http://nickstorage.queue.core.windows.net/app1tasks

中的介绍,这里就不重复了。

便查看 C# 代码执行的结果,本文使用了 MS 发布的一个 Azure Storage 客户端工具:http://storageexplorer.com/" target="_blank">Microsoft Azure Storage Explorer,文中简称为 Storage Explorer。下面是 Queue Storage 的一个截图:

title="Azure 基础:Queue Storage" alt="Azure 基础:Queue Storage" src="https://cn.js-code.com/res/2019/02-09/09/a8ed28f471551207240fd0da0b9acaf5.png" >

CloudStorageAccount storageAccount = CloudStorageAccount.Parse(https;AccountName=xxx;AccountKey=yyy);

<span style="color: #008000">// <span style="color: #008000">CloudQueueClient 类是 Windows Azure Queue service 客户端的逻辑表示,我们需要使用它来配置和执行对 Queue Storage 的操作。
CloudQueueClient queueClient =<span style="color: #000000"> storageAccount.CreateCloudQueueClient();
<span style="color: #008000">// <span style="color: #008000">CloudQueue 表示一个 Queue 对象,绝大多数的操作都是通过这个对象完成的。
CloudQueue queue = queueClient.GetQueueReference(<span style="color: #800000">"<span style="color: #800000">app2tasks<span style="color: #800000">"<span style="color: #000000">);
<span style="color: #008000">// <span style="color: #008000">如果不存在就创建名称为 "app2tasks" 的 Queue。
queue.CreateIfNotExists();

title="Azure 基础:Queue Storage" alt="Azure 基础:Queue Storage" src="https://cn.js-code.com/res/2019/02-09/09/628e7a5bd65fefba9d7d31161e857482.png" >

把消息插入 Queue

肯定有一个或多个程序产生 message 并插入到 Queue 中,接下来我们看看用 C# 如何实现

String current =datetiR_538_11845@e.Now.ToString(); CloudQueuemessage message = CloudQueuemessage(Hello,World. -- +); queue.Addmessage(messagE)

title="Azure 基础:Queue Storage" alt="Azure 基础:Queue Storage" src="https://cn.js-code.com/res/2019/02-09/09/632c8d4513d0076439b509bf19ce49f7.png" >

:45,11:33:57,和 11.34:16。在接下来的描述中我分别称它们为第一条消息、第二条消息和第三条消息。

查看 Queue 中的消息

肯定有队头和队尾,消息从队头出队从队尾入队。那么能不能查看一下队头的消息 (也就是下一条要处理的消息,此处只是查看并不是要处理) 呢?当然可以:

CloudQueuemessage peekedmessage =message();

message 方法总是取到处于队头位置的那条消息,并且不改变队列的状态!

message 方法的内涵,笔者从网上找了一张解释 peek 一词的图片,请注意图片中的黄色线条:

title="Azure 基础:Queue Storage" alt="Azure 基础:Queue Storage" src="https://cn.js-code.com/res/2019/02-09/09/45588bcd0ab108aabfa986fa863ba558.png" >

查看 Queue 的长度

); ? cachedmessageCount = queue.ApproximatemessageCount;

更新 Queue 中的消息

该怎么办?我们可以找到这条消息然后更新它的内容:

CloudQueuemessage message =message(); message(),队头的消息会变得不可见 message.SetmessageContent(updated contents.); queue.updatemessage(message,TimeSpan.FromSeconds(messageupdateFields.Content |messageupdateFields.Visibility);

title="Azure 基础:Queue Storage" alt="Azure 基础:Queue Storage" src="https://cn.js-code.com/res/2019/02-09/09/11ae2fd565b319870c57faf257231f17.png" >

只能通过 ID 认出它是之前的"第一条消息",之前"第二条消息","第三条消息"的位置也发生了相应的变化。

处理 Queue 中的消息

message 方法取出队头的消息,此时该消息会在 Queue 中 30 秒不可见(这个时常用户可以设置,默认是 30 秒);delete 方法删除消息;delete 方法),此消息会在 30 秒后重新出现在队尾。

message(),队头的消息会变得不可见 CloudQueuemessage message =message(); { 在30s内你没有删除这条消息,它会重新出现在队尾。 deletemessage(messagE); } { }

删除 Queue 中的消息

删除它。本质上和处理完再删除是一样的。

总结

大佬总结

以上是大佬教程为你收集整理的Azure 基础:Queue Storage全部内容,希望文章能够帮你解决Azure 基础:Queue Storage所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: