阿里云ACE共创空间——MQ消息队列产品测试
一、产品背景
消息队列是阿里巴巴集团自主研发的专业消息中间件。 产品基于高可用分布式集群技术,提供消息订阅和发布、消息轨迹查询、定时(延时)消息、资源统计、监控报警等一系列消息云服务,是企业级互联网架构的核心产品。 MQ 目前提供 TCP 、MQTT 两种协议层面的接入方式,支持 Java、C++ 以及 .NET 不同语言,方便不同编程语言开发的应用快速接入 MQ 消息云服务。 用户可以将应用部署在阿里云 ECS、企业自建云,或者嵌入到移动端、物联网设备中与 MQ 建立连接进行消息收发,同时本地开发者也可以通过公网接入 MQ 服务进行消息收发。
从官方文档中看到MQ消息队列的产品为一个提供消息服务的中间件,可以提供端到云的消息服务,这个端的覆盖面包括了移动端和IOT物联网设备,并且为了支持IOT的需要除TCP协议外提供了MQTT来支持物联网设备的消息服务,在云上的支持不止包括阿里云,可以支持用户将服务部署在企业自建云上。作为PAAS层的服务支持用户通过API的方式将消息队列服务集成在自己的平台上,目前在产品的结构上分成两部分,移动端和物联网的消息队列服务单独作为一个子产品MQ FOR IOT提供服务,这项服务和MQ主服务比主要的区别就是增加了对MQTT通讯协议的支持。
从编程语言来看,因为MQ FOR IOT是面向移动端和物联网,所以需要支持的编程语言更多,包括ANDROID、IOS和PYTHON环境在消息队列服务中都已经支持。
二、消息队列MQ产品测试
开通服务进入控制台后看到菜单将消息队列服务清晰的分成两部分,支持MQTT的微消息服务单独列出子菜单,菜单选项按照功能分成三大部分,生产管理类子菜单,消息查询追踪类子菜单和监控报警类子菜单。
TOPIC是消息队列服务中一个重要概念,用于区分消息的不同类型,比如在一次交易中,用户对于商品所下的订单和支付的订单虽然针对的是同一件事情,但是对于消息队列来说,这两种消息的功能和类型有明显的不同,可以用不同的TOPIC来区分,在TOPIC下还有个标签TAG用于二级分类,如一个用户对不同商品的购买订单可以作为不同的TAG。针对消息的配置来讲,需要定义消息的名字和消息的类型。在类型上普通消息、事务消息、定时消息、分区消息等都可以将不同类型的TOPIC根据类型区分。将TOPIC按什么类型进行分类及归入哪个分类需要用户根据实际情况进行确定。


除了TOPIC外,对于一条消息,还有三个独特的属性可以为查询提供方便,生产者的编号(PRODUCT ID)、消费者的编号(CONSUMER ID)和消息编号(MESSAGE ID),加上TOPIC的配置,可以准确定义海量消息中的每一条,方便查询和监控等功能的支持。
消息路由是指的在不同地域间的消息同步,需要配置源地域和TOPIC、目标地域和TOPIC,从最新写入源的消息开始进行同步。

资源报表分成两个子项,生产者和消费者,可以对于消息的两个源头的情况进行查看,如果需要对于消息服务的可以在监控报警设置中进行配置,对于消息的报警项,有两个重要指标堆积量和消息延迟,分别从数量和时间对于消息服务的异常情况进行报警,通过短信方式通知用户。
三、微消息队列MQ FOR IOT产品测试
从微消息队列的按量付费的计费项目就可以看出物联网在消息通讯上的几个主要特征,即时连接数、订阅消息数和消息收发量。万物互联后物联网设备的消息数在这三个维度都会到达海量的程度,特别是即时连接这个特点和一般的MQ服务有很大不同,可以代表物联网中消息传递的特征。
此外,微消息队列服务对于消息的分类同一般MQ服务不同的是,将TOPIC分成父TOPIC和子TOPIC的方式而不是TOPIC和TAG的分类方式,子TOPIC从属于父TOPIC,这个特点我想也是因为需要支持物联网的关系,因为传统下的消息都是针对应用比较多,但是物联网情况下,消息的类型如设备的状态、工业监测数据等会比一般情况多的多,并且消息服务的实时性要求更高,所以将TOPIC设置成父子从属关系更有利于对海量不同类型的消息进行区分。
原文链接
本文为云栖社区原创内容,未经允许不得转载。
阿里云ACE共创空间——MQ消息队列产品测试的更多相关文章
- 【阿里云产品公测】在Laravel4框架中使用阿里云ACE的缓存服务
作者:阿里云用户dvbhack 受论坛排版和格式限制,这篇帖子的格式不是很利于阅读,如果你看帖子觉得不那么舒服,可以看我发表在自己博客上的原文:http://www.ofcss.com/2014/04 ...
- 【阿里云产品公测】阿里云ACE部署通用完整教程及评测
[阿里云产品公测]阿里云ACE部署通用完整教程及评测 作者:阿里云用户bailimei ACE应该是目前在公测的服务中应用最广泛的一项服务.在公测云引擎ACE前曾使用过新浪SAE,而ACE给我的最初印 ...
- 【阿里云产品公测】阿里云ACE配置全程图解,详细到不行!
作者:阿里云用户sofia 看过阿里云社区的其他技术大姥们的评测教程,感觉还是不够详细,对于一个第一次接触ace.新浪sae这类的应用来说还是比较陌生的.我最喜欢写教程了,不过我有我的风格,那就是简单 ...
- 阿里云ACE深圳同城会 开始报名
大家好,阿里云 ACE深圳同城会本周末第一活动,主要大家一起聚聚,互相认识和熟悉,未来一起玩儿一起进步~ 通知大家一个好消息,当前凡是加入深圳ACE同城会组织(群)的朋友,通过跟群主报名申请,将有机会 ...
- 阿里云ACE下的PHP开发环境搭建
阿里云ACE下的PHP开发环境搭建 本系列文章由ex_net(张建波)编写.转载请注明出处. http://blog.csdn.net/ex_net/article/details/23999053 ...
- IM开发基础知识补课(五):通俗易懂,正确理解并用好MQ消息队列
1.引言 消息是互联网信息的一种表现形式,是人利用计算机进行信息传递的有效载体,比如即时通讯网坛友最熟悉的即时通讯消息就是其具体的表现形式之一. 消息从发送者到接收者的典型传递方式有两种: 1)一种我 ...
- 多维度对比5款主流分布式MQ消息队列,妈妈再也不担心我的技术选型了
1.引言 对于即时通讯网来说,所有的技术文章和资料都在围绕即时通讯这个技术方向进行整理和分享,这一次也不例外.对于即时通讯系统(包括IM.消息推送系统等)来说,MQ消息中件间是非常常见的基础软件,但市 ...
- 使用Rabbit MQ消息队列
使用Rabbit MQ消息队列 综合概述 消息队列 消息队列就是一个消息的链表,可以把消息看作一个记录,具有特定的格式以及特定的优先级.对消息队列有写权限的进程可以向消息队列中按照一定的规则添加新消息 ...
- 初识MQ消息队列
MQ 消息队列 消息队列(Message Queue)简称MQ,是阿里巴巴集团中间件技术部自主研发的专业消息中间件. 产品基于高可用分布式集群技术,提供消息发布订阅.消息轨迹查询.定时(延时)消息.资 ...
随机推荐
- Windows环境下,本地Oracle创建dblink连接远程mysql
前言 我的情况是,本地安装了oracle(安装完成后带有SQL Developer,不需要再安装instantclient),创建dblink去连接远程的mysql.有些朋友可能是 本地使用PL\SQ ...
- springmvc ajax tomcat简单配置实现跨域访问
发现一种改动最小也能实现跨域请求的方法 服务端 服务端修改web.xml配置文件, 增加过滤器 (不用导入任何jar包, 用的tomcat自带jar) <!-- 支持跨域请求 --> &l ...
- history.back(-1) 和history.go(-1) 有什么区别?
history.back(-1) 返回上一页,当前页面的数据都没有保存下来.就像当前也没有出现过一样. history.go(-1) 返回上一页,当前页的内容都保存下来了,包括session,等 ...
- Linux指令集
最近在学习Linux虚拟机,下面是我在学习虚拟机的过程中使用过的一些指令,及其作用. pwd-> 列出当前目录路径 ls-> 列出当前目录列表 cd-> 改变目录 mkdir-> ...
- cookie跟session自我介绍
Cookie是什么? cookie说的直白点就是保存在用户浏览器端的一个键值对,举个例子,你现在登录了京东商城,你把浏览器关闭之后,你再打开京东,你还是可以对你的账户继续操作,已经购买的商品,订单都是 ...
- C# WinForm:DataTable中数据复制粘贴操作的实现
1. 需要实现类似于Excel的功能,就是在任意位置选中鼠标起点和终点所连对角线所在的矩形,进行复制粘贴. 2. 要实现这个功能,首先需要获取鼠标起点和终点点击的位置. 3. 所以通过GridView ...
- python从入门到实践-11章测试模块(测试函数出问题)
#!/user/bin/env python# -*- coding:utf-8 -*- # 用python中unittes中工具来测试代码 # 1.测试函数import unittestfrom n ...
- 微信小程序发送短信验证码完整实例
微信小程序注册完整实例,发送短信验证码,带60秒倒计时功能,无需服务器端.效果图: 代码: index.wxml <!--index.wxml--> <view class=&quo ...
- win7下配置mysql的my.ini文件
一.环境 操作系统是win7 x64, mysql是5.6.40. 二. 怎么配置? 修改my.ini文件, 添加[client], 在下面加一行 default-character-set=utf8 ...
- Windows获取进程完整路径
#include <stdio.h> #include <locale.h> #include <windows.h> #include <tlhelp32. ...