初码-Azure系列-存储队列的使用与一个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进行操作,不像阿里云那样,在控制面板中就能操作

所以就抽空做了一个
弥补一些AzurePortal的缺失,目前先做一个存储队列的辅助功能,包括队列创建删除和消息的处理
地址是:https://www.alphams.cn/AzureHelper
希望可以帮助到大家

总结一下:
1、Azure这样的存储队列和阿里云的消息服务功能等类似的服务是消息队列技术的演变,这样简化的消息队列服务一定会得到越来越广泛的使用
2、Azure的控制面板确实得再加强加强,总是功能缺失,不知道Global的Azure是不是也这样。。
3、蓝天助手会持续开发,希望能够拓展出一些有意思的辅助和功能
转载请注明出处,欢迎邮件交流:zhangrou@printhelloworld.com,或者加QQ群:11444444
初码-Azure系列-存储队列的使用与一个Azure小工具(蓝天助手)的更多相关文章
- 初码-Azure系列-记一次MySQL数据库向Azure的迁移
初码Azure系列文章目录 还在继续给客户迁移不同的系统到Azure,这一次是一个系统的MySQL数据库要迁移,将迁移过程记录一下 原系统环境 数据库版本:MySQL Community Editio ...
- jQuery源码分析系列(38) : 队列操作
Queue队列,如同data数据缓存与Deferred异步模型一样,都是jQuery库的内部实现的基础设施 Queue队列是animate动画依赖的基础设施,整个jQuery中队列仅供给动画使用 Qu ...
- Azure系列1.1.2 —— 用于 IntelliJ 的 Azure 工具包的登录说明
(文中大部分内容(95%)Azure官网上有,我只是把我自己实际操作中遇到的问题在这里阐述一下.) 先决条件 若要完成文章中的步骤,需要安装用于 IntelliJ 的 Azure 工具包,该工具包需要 ...
- 初码-Azure系列-文章目录
系统迁移 初码-Azure系列-记一次MySQL数据库向Azure的迁移 初码-Azure系列-迁移PHP应用至Azure的一些实践记录和思考 初码-Azure系列-记一次从阿里云到Azure的迁移和 ...
- 【初码干货】记一次分布式B站爬虫任务系统的完整设计和实施
[初码文章推荐] 程序员的自我修养 Azure系列文章 阿里云系列文章 爬虫系列文章 [初码产品推荐] AlphaMS开发模式 闪送达城市中央厨房 今天带来一个有意思的东西-分布式B站爬虫任务系统 这 ...
- jQuery源码分析系列
声明:本文为原创文章,如需转载,请注明来源并保留原文链接Aaron,谢谢! 版本截止到2013.8.24 jQuery官方发布最新的的2.0.3为准 附上每一章的源码注释分析 :https://git ...
- [转]jQuery源码分析系列
文章转自:jQuery源码分析系列-Aaron 版本截止到2013.8.24 jQuery官方发布最新的的2.0.3为准 附上每一章的源码注释分析 :https://github.com/JsAaro ...
- jQuery源码分析系列(转载来源Aaron.)
声明:非本文原创文章,转载来源原文链接Aaron. 版本截止到2013.8.24 jQuery官方发布最新的的2.0.3为准 附上每一章的源码注释分析 :https://github.com/JsAa ...
- [转]Azure 表存储和 Windows Azure SQL Database - 比较与对照
本文转自:https://msdn.microsoft.com/library/azure/jj553018 更新时间: 2014年10月 作者:Valery Mizonov 和 Seth Manhe ...
随机推荐
- MySQL优化 - 索引优化
索引(在MySQL中也叫做"键(key)")是存储引擎用于快速找到记录的一种数据结构. 索引对于良好的性能非常关键,尤其是当表的数据量越来越大时,索引对性能(查询)的影响愈发重要. ...
- zookeeper伪分布式集群环境搭建
step1.下载 下载地址:http://zookeeper.apache.org/releases.html 将下载的压缩包放到用户家目录下(其他目录也可以) step2.解压 $tar –zxvf ...
- Machine Learning - week 3 - Overfitting
The Problem of Overfitting 如果有太多的 features,假设可能与训练数据太匹配了以致于预测未来的数据不准确.如下图: 解决 overfitting 1. 既然是由太多的 ...
- linux下,文件的权限和数字对应关系详解
命令 chmod ABC file 其中A.B.C各为一个数字,分别表示User.Group.及Other的权限. A.B.C这三个数字如果各自转换成由"0"."1&qu ...
- [bzoj1826] [JSOI2010]缓存交换
虽然不知道为什么..但显然,每次扔掉离下次查询最远的内存单元就行了233 用堆来维护贪心...(优先队列大法好 #include<cstdio> #include<iostream& ...
- Centos/Rhel7部署Zabbix监控(部署篇之服务器篇)
Zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案. Zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通知机制以让系统管理员快速定位/解决 ...
- python内建函数isinstance基础用法
语法:isinstance(object,type) 作用:来判断一个对象是否是一个已知的类型. 其第一个参数(object)为对象,第二个参数(type)为类型名(int...)或类型名的一个 ...
- list容器的C++代码实现
#include <iostream> using namespace std; template <class T> class mylist;//前置声明 templat ...
- hash算法 (hashmap 实现原理)
Hash ,一般翻译做" 散列" ,也有直接音译为" 哈希" 的,就是把任意长度的输入(又叫做预映射, pre-image),通过散列算法,变换成固定长度的输出 ...
- C++ enum用法小技巧
enum DeviceDataType :int { None = 0, SourceRGBA32 = 1, Keying = ...