初码Azure系列文章目录


将消息队列技术模型简化,并打造成更适合互联网+与敏捷开发的云服务模式,好像已经是行业趋势,阿里云也在推荐使用消息服务(HTTP协议为主)而来替代消息队列(TCP协议、MQTT协议为主),并且将消息服务纳入到了存储体系内(Azure也是,有人知道为什么吗,是因为数据持久化在了磁盘上?)

更搞笑的是,阿里云还在帮助中心贴了一个表格

真是扎心了老铁,这不是自己怼自己,逼人用消息服务吗。。

回到本文主题上来,这几天用了Azure的存储服务里面的存储队列,感觉还是非常好用的,大道至简,傻瓜又方便,简单记录一下

产品结构:Azure-存储-存储队列

新建一个存储

在填写参数的时候,建议选择ARM模式(资源管理),然后复制性默认是RA-GRS,这个没有细研究,就按这个来了

等待几分钟,就建好了,我们会发现,这个存储内默认可以使用Blob,文件,表和队列服务

前往队列的面板

可以看到这里还不支持一些可视化的面板操作,于是找到官方教程页面,https://www.azure.cn/documentation/articles/storage-dotnet-how-to-use-queues/

下面学习一下存储队列的使用

可以说官方的这个教程页面的逻辑结构还是非常清晰的,首先介绍了存储队列基础概念和技术逻辑结构,简单摘要一些如下

  • 存储帐户:对 Azure 存储空间的所有访问都要通过存储帐户来完成。有关存储帐户容量的详细信息,请参阅 Azure 存储空间可伸缩性和性能目标

  • 队列:一个队列包含一组消息。所有消息必须位于相应的队列中。请注意,队列名称必须全部小写。有关命名队列的详细信息,请参阅命名队列和元数据

  • 消息:一条消息(不管采用何种格式)的最大大小为 64 KB。消息可以保留在队列中的最长时间为 7 天

URL 格式:可使用以下 URL 格式对队列进行寻址:http://<storage account>.queue.core.chinacloudapi.cn/<queue>

可使用以下 URL 访问示意图中的某个队列:http://myaccount.queue.core.chinacloudapi.cn/imagesToDownload

对于.NET的实践,直接在Nuget中应用两个包

WindowsAzure.Storage

WindowsAzure.ConfigurationManager

看了下应该也提供了对.NET Core的支持

然后在教程中,给出了9个典型场景和方法,并给出了一些解释和说明,相信是能够覆盖到绝大多数的用户场景的

  • 创建队列

  • 在队列中插入消息

  • 扫视下一条消息

  • 更改已排队消息的内容

  • 取消对下一条消息的排队

  • 将 Async-Await 模式与公用队列存储 API 配合使用

  • 使用其他方法取消对消息的排队

  • 获取队列长度

  • 删除队列

相关代码也很清晰,只是美中不足的是,日常的一些操作,例如消息调试、队列创建删除等,只能通过代码或者PowerShell进行操作,不像阿里云那样,在控制面板中就能操作

所以就抽空做了一个

蓝天助手-Azure中国区辅助工具集

弥补一些AzurePortal的缺失,目前先做一个存储队列的辅助功能,包括队列创建删除和消息的处理

地址是:https://www.alphams.cn/AzureHelper

希望可以帮助到大家

总结一下:

1、Azure这样的存储队列和阿里云的消息服务功能等类似的服务是消息队列技术的演变,这样简化的消息队列服务一定会得到越来越广泛的使用

2、Azure的控制面板确实得再加强加强,总是功能缺失,不知道Global的Azure是不是也这样。。

3、蓝天助手会持续开发,希望能够拓展出一些有意思的辅助和功能


作者:张柔,发布于  博客园  与  张柔的博客

转载请注明出处,欢迎邮件交流:zhangrou@printhelloworld.com,或者加QQ群:11444444

初码-Azure系列-存储队列的使用与一个Azure小工具(蓝天助手)的更多相关文章

  1. 初码-Azure系列-记一次MySQL数据库向Azure的迁移

    初码Azure系列文章目录 还在继续给客户迁移不同的系统到Azure,这一次是一个系统的MySQL数据库要迁移,将迁移过程记录一下 原系统环境 数据库版本:MySQL Community Editio ...

  2. jQuery源码分析系列(38) : 队列操作

    Queue队列,如同data数据缓存与Deferred异步模型一样,都是jQuery库的内部实现的基础设施 Queue队列是animate动画依赖的基础设施,整个jQuery中队列仅供给动画使用 Qu ...

  3. Azure系列1.1.2 —— 用于 IntelliJ 的 Azure 工具包的登录说明

    (文中大部分内容(95%)Azure官网上有,我只是把我自己实际操作中遇到的问题在这里阐述一下.) 先决条件 若要完成文章中的步骤,需要安装用于 IntelliJ 的 Azure 工具包,该工具包需要 ...

  4. 初码-Azure系列-文章目录

    系统迁移 初码-Azure系列-记一次MySQL数据库向Azure的迁移 初码-Azure系列-迁移PHP应用至Azure的一些实践记录和思考 初码-Azure系列-记一次从阿里云到Azure的迁移和 ...

  5. 【初码干货】记一次分布式B站爬虫任务系统的完整设计和实施

    [初码文章推荐] 程序员的自我修养 Azure系列文章 阿里云系列文章 爬虫系列文章 [初码产品推荐] AlphaMS开发模式 闪送达城市中央厨房 今天带来一个有意思的东西-分布式B站爬虫任务系统 这 ...

  6. jQuery源码分析系列

    声明:本文为原创文章,如需转载,请注明来源并保留原文链接Aaron,谢谢! 版本截止到2013.8.24 jQuery官方发布最新的的2.0.3为准 附上每一章的源码注释分析 :https://git ...

  7. [转]jQuery源码分析系列

    文章转自:jQuery源码分析系列-Aaron 版本截止到2013.8.24 jQuery官方发布最新的的2.0.3为准 附上每一章的源码注释分析 :https://github.com/JsAaro ...

  8. jQuery源码分析系列(转载来源Aaron.)

    声明:非本文原创文章,转载来源原文链接Aaron. 版本截止到2013.8.24 jQuery官方发布最新的的2.0.3为准 附上每一章的源码注释分析 :https://github.com/JsAa ...

  9. [转]Azure 表存储和 Windows Azure SQL Database - 比较与对照

    本文转自:https://msdn.microsoft.com/library/azure/jj553018 更新时间: 2014年10月 作者:Valery Mizonov 和 Seth Manhe ...

随机推荐

  1. java实现 比较两个文本相似度-- java 中文版 simHash 实现 ,

    比较两个文本的相似度 这里采用 simHash 算法 ; 分词是 基于 http://hanlp.linrunsoft.com/ 的开源 中文分词包 来实现分词 ; 实现效果图: 直接上源码: htt ...

  2. 利用python写一个简单的小爬虫 爬虫日记(1)(好好学习)

    打开py的IDLE >>>import urllib.request >>>a=urllib.request.urlopen("http://www.ba ...

  3. 【Java学习笔记之二十七】Java8中传多个参数时的方法

    java中传参数时,在类型后面跟"..."的使用:        public static void main(String[] args){       testStringA ...

  4. 洛谷 P1972 [SDOI2009]HH的项链【莫队算法学习】

    P1972 [SDOI2009]HH的项链 题目背景 无 题目描述 HH 有一串由各种漂亮的贝壳组成的项链.HH 相信不同的贝壳会带来好运,所以每次散步完后,他都会随意取出一段贝壳,思考它们所表达的含 ...

  5. B. Gerald is into Art

    B. Gerald is into Art time limit per test 2 seconds memory limit per test 256 megabytes input standa ...

  6. javaScript原生定义的函数

    1.JavaScript中的算术运算 包括加(+).减(-).乘(*).除(/)和求余(取模)(%)运算,除了这些基本的运算外,JavaScript还支持更加复杂的算术运算,这些复杂算术运算作为Mat ...

  7. mysql 恢复数据

    前提:保存了需要恢复数据库的文件 .frm 和 .ibd 文件 条件:InnoDB 类型的 恢复表结构1.新建一个数据库--新建一个表,表名和列数和需要恢复数据库相同2.停止mysql服务器 serv ...

  8. 动态链接库(DLL)编写经验

    我首先说明DLL的生成方法,之后再补充一些特殊之处. 生成方法: 1.对需要导出的类,在头文件中添加 #ifdef CLASS _API #define CLASS_API _declspec(dll ...

  9. 数据库01创建表和DML语言

    楼主用的数据库时mysql,用的时navacat for mysql. 数据库层面: 1.显示所有数据库 show databases; 2.创建数据库,名字叫lyh,编码为utf-8 create ...

  10. PHP项目开发

    PHP项目开发 =================================== member:(用户表) userid username password name mobile emai a ...