初码-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 ...
随机推荐
- windows service编程
1 基本概念 1.1windows服务简介 创建在它们自己的 Windows 会话中可长时间运行的可执行应用程序. 这些服务可以在计算机启动时自动启动,可以暂停和重新启动而且不显示任何用户界面. 1. ...
- 使用c语言实现linux数据库的操作
前言:上一篇讲解了linux下使用命令行操作数据库,这篇继续讲解怎么使用c语言实现linux数据库的操作. 使用c语言实现环境搭建:既然我们要使用c语言实现linux数据库操作,那么首先我们得先把数据 ...
- 【Java学习笔记之五】java数组详解
数组 概念 同一种类型数据的集合.其实数组就是一个容器. 数组的好处 可以自动给数组中的元素从0开始编号,方便操作这些元素. 格式1: 元素类型[] 数组名 = new 元素类型[元素个数或数组长度] ...
- C++ STL之min_element()与max_element()(取容器中的最大最小值)
min_element()和max_element 头文件:#include<algorithm> 作用:返回容器中最小值和最大值.max_element(first,end,cmp);其 ...
- POJ2503-Babelfish-二分
Babelfish Time Limit: 3000MS Memory Limit: 65536K Total Submissions: 44545 Accepted: 18803 Descr ...
- excel数据导出新妙招
之前在做项目的时候需要将数据库中的数据导出为excel表格一遍打印查阅,在网上找了很多插件也没有找到自己理想的好用的插件(也就是说没有找到令我满意的插件),最近在学习a标签的相关知识时理解到,a标签不 ...
- [数据分析工具] Pandas 功能介绍(一)
如果你在使用 Pandas(Python Data Analysis Library) 的话,下面介绍的对你一定会有帮助的. 首先我们先介绍一些简单的概念 DataFrame:行列数据,类似 Exce ...
- 一步一步从原理跟我学邮件收取及发送 4.不同平台下的socket
既然是面向程序员的文章那当然不能只说说原理,一定要有实际动手的操作. 其实作为我个人的经历来说,对于网络编程,这是最重要的一章! 作为一位混迹业内近20年的快退休的程序员,我学习过很多的开发语言 ...
- springcloud干活之服务消费者(feign)
springcloud系列文章的第三篇 本章将继续讲述springcloud的消费者(feign) Spring Cloud Feign是一套基于Netflix Feign实现的声明式服务调用客户端. ...
- 小白的Python之路 day5 configparser模块的特点和用法
configparser模块的特点和用法 一.概述 主要用于生成和修改常见配置文件,当前模块的名称在 python 3.x 版本中变更为 configparser.在python2.x版本中为Conf ...