Azure Queue队列存储(1)

原创 2015年06月23日 15:49:50

继前面介绍了一些关于Table和Blob等的存储之外, 今天再给大家介绍一下Queue队列存储。和以往一样, 这篇文章的示例还是以C#代码以及Azure Storage Client for .NET. 来做介绍。

首先我们来介绍一下什么是Queue(队列)存储

Azure Queue存储是一种比较常用且功能强大的存储服务,人们可以通过HTTP或者HTTPS的方式从世界各地来访问Azure大量存储信息的一种服务。一个queue消息可以最大到64KB, 而且一个queue可以存储数百万的消息, 直到达到一个存储账户的最大限度。 一个存储账户可以存储最大到500TB的blob, queue或者table数据。

常用的Queue存储包括:

  • 创建一系列异步处理作业

  • 从一个Azure Web role传递信息到另一个Azure Worker role

Queue服务概念
这里写图片描述

  • URL格式: Queues可以通过下面的URL格式来访问:
 http://<storage account>.queue.core.windows.net/<queue>
  • 下面的URL地址是上面的图片里所显示的地址
 http://myaccount.queue.core.windows.net/imagesToDownload
  • 存储账户: 所有的访问都是基于存储账户的

  • Queue队列: 一个queue包含一系列的消息。 所有的消息必须在一个queue里

  • Message: 一条消息可以是各种格式, 但是不能超过64KB

创建一个Azure存储账户

您可以参考前面的文章来创建一个Azure存储账户。 既可以登录Azure Management Portal来新建一个账户, 也可以从过Azure PowerShell或者Azure CLI来创建, 或者使用Azure Storage Resource Provider REST API.

建立一个存储连接串

.NET版Azure存储客户端库支持使用存储连接串来配置结点和密码来访问存储服务。 这里推荐您把这个链接串存储在一个配置文件里, 而不是直接把它直接写到您的代码里。 你可以用下面两种方式来保存您的连接串。

如果您的应用在Azure云服务里面, 您可以用Azure配置系统来保存您的连接串(.csdef和.cscfg)

如果您的应用在Azure虚拟机里, 或者您的.NET应用不在Azure里面。 您可以在.NET配置系统里面保存连接串(web.config或者app.config)

从Azure云服务中来配置连接串
Azure云服务在管理界Portal上提供了一个特别的配置算法来动态的修改您的配置文件而不需要从新部署您的应用。

下面我们来介绍一下如何做:

1.. 在Visual Studio的Solution Explorer里, 在Azure Development Project里的Roles文件夹, 右键点击你的web role或者worker role, 然后点击Properties。

这里写图片描述

2.. 点击Settings, 然后点击Add Setting。

这里写图片描述

一个Setting1就被新建出来了。

3..在Setting1的Type下拉菜单里, 选择Connection String。

这里写图片描述

4.. 然后点击…按钮。 然后Storage Account Connection String对话框就会打开。

5.. 选择你是否想要使用storage emulator(微软Azure在您本机上模拟的存储)或者是远程的Azure存储账号。 您可以使用emulator来降低存储的开销。
如果你选择云端的远程Azure存储账户, 你需要输入primary access key。

这里写图片描述

6..修改NameSetting1以便更方便记住

这里写图片描述

通过.NET配置文件来配置您的连接串

如果您的程序不是Azure云服务, 包括Azure网站, Azure虚拟机,和一些不在Azure里面运行的服务。 建议您使用.NET来配置, 格式如下

<configuration>
    <appSettings>
        <add key="StorageConnectionString" value="DefaultEndpointsProtocol=https;AccountName=account-name;AccountKey=account-key" />
    </appSettings>
</configuration>

例子如下, 可能和您自己的config文件类似:

<configuration>
    <appSettings>
        <add key="StorageConnectionString" value="DefaultEndpointsProtocol=https;AccountName=storagesample;AccountKey=nYV0gln9fT7bvY+rxu2iWAEyzPNITGkhM88J8HUoyofpK7C8fHcZc2kIZp6cKgYRUM74lHI84L50Iau1+9hPjB==" />
    </appSettings>
</configuration>

接下来在配置完成后, 我们就可以来完成我们的任务了。

相关文章推荐

Windows Azure队列与服务总线队列的比较

《Windows Azure队列与服务总线队列的比较》作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs在微软Azure云平台上,有两种队列实现,一种是Win...
  • chszs
  • chszs
  • 2014年05月06日 23:22
  • 3727

WebMatrix 2发布了!添加了新的Windows Azure 功能

你可能还记得这篇关于WebMatrix的博客文章,Windows Azure Web Sites和PHP将在六月份到来。好吧,对于WebMatrix 2 带来的东西我们感到很兴奋!这篇文章涉及到一些主...

Azure Queue队列存储(2)

我们接上一篇来继续讨论queue存储, 在(1)中我们已经按步骤完成了配置和连接。 下面我们就来看如何来使用具体的存储。以编程方式访问Queue队列存储 获取组件您可以使用NuGet来获取Micr...

现在可用:跨地域备份和Windows Azure 存储的Blob、Table 和 Queue的新特性

在BUILD Day的两个主旨发言中,我们宣布跨地域备份和新版本的REST API的发布,使得Windows Azure Blobs、Tables 和 Queues的功能得到改善。现在我们正在对两...

Azure Table存储(1)

承接前面的文章, 今天给大家介绍一下Table存储(表存储)服务。 还是老样子都是用C#的代码示例, 使用Azure存储客户端库。什么是Table服务Azure Table存储服务 主要用于存储大量的...

Azure Blob存储(1)

这篇文章里笔者将为大家简单的介绍一下Azure Blob存储服务。 文章参考了Azure社区的一些英文文章和例子。 例子基本上都是用C#完成的。 用力包括了上传, 列表, 下载和删除Blob。 ...

java中Queue队列的介绍和使用(1)之LinkedList

public interface Queueextends Collection队列通常(但并非一定)以 FIFO(先进先出)的方式排序各个元素。不过优先级队列和 LIFO 队列(或堆栈)例外,前者根...

Windows Azure的MSMQ--Queue Storage 例子

  • 2011年07月01日 14:22
  • 722KB
  • 下载

※数据结构※→☆线性表结构(queue)☆============队列 顺序存储结构(queue sequence)(八)

顺序存储结构         在计算机中用一组地址连续的存储单元依次存储线性表的各个数据元素,称作线性表的顺序存储结构.          顺序存储结构是存储结构类型中的一种,该结构是把逻辑上相邻的...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Azure Queue队列存储(1)
举报原因:
原因补充:

(最多只允许输入30个字)