消息服务MNS和消息队列ONS产品对比
消息服务MNS和消息队列ONS产品对比

MNS已经进过严格测试,已达到商业化的稳定性要求,其主要特点和适用场景
1.数据高可靠(10个9),对于数据可靠性敏感(要求消息数据不丢)的应用场景建议选择。
2.所有API符合HTTP RESTFUL 标准,方便接入,对于由于有不同网络安全域之间数据交换要求的场景建议选择,只需要http80端口开放就可以(一般默认开放),不需要开放额外端口。
3.后端存储采用阿里云自主研发的飞天分布式系统(已广泛应用于阿里云各个云产品),单集群规模已达到5k台,消息堆积无上限,对于消息堆积有上亿级别要求的用户场景,建议选择。
4.由于使用HTTP Restful 接口,SDK客户端无状态,不会占用用户服务器过多CPU 资源。对于用户服务器CPU 占用有要求的场景建议选择。
5.保证用户消息至少被消费一次语义。对于消息处理有此类要求的场景建议选择。
6.保证消息写高可用(always writable)。对于写消息可用性要求较高的用户建议选择。
7.MNS API 已全部支持RAM主子账号访问,方便企业按账号角色对MNS访问权限进行管理。
历史
LinkedIn在发达后,急需一个消息系统,他们的业务主要基于JAVA,在考查了JMS等等后,认为现有的不能满足他们的要求,于是发展了自己的MQ系统,特点是大量利用了当时飞速发展的hadoop系统中的zookeeper,
2011年,LinkedIn将他们的MQ开源,命名为Kafka
在2012年淘宝的双11压力,促使淘宝也开发自己的MQ系统,但淘宝的业务和LinkedIn并不太相似,所以淘宝借用了Kafka的zookeeper思想,自己实现了自己的MQ,淘宝也将其开源,命名为metaQ,这大约发生淘宝在metaQ上发展了数年,一直发展到3.0版本,时间到了2014年,改名为RocketMQ,阿里云上线后,基于RocketMQ部署的就是ONS。
但RocketMQ是云时代之前的产物,云时代的阿里云基于飞天系统,天生的大规模计算能力
2014年,新的基于飞天系统开发的新的MQ系统,MQS
2015年,重新命名为 MNS
结论
如果你只想使用MQ,并且不打算迁移到别的平台,那么推荐使用MNS,它是新开发的系统,无论性能还是稳定性,都远超ONS
但你有时想要自己部署一套自己的MQ,或者以后有可能迁移到非阿里云的环境,那么使用ONS,你可以自己部署一套RocketMQ来平稳过渡
参考
消息服务MNS和消息队列ONS产品对比的更多相关文章
- JMS(Java消息服务)与消息队列ActiveMQ基本使用(一)
最近的项目中用到了mq,之前自己一直在码农一样的照葫芦画瓢.最近几天研究了下,把自己所有看下来的文档和了解总结一下. 一. 认识JMS 1.概述 对于JMS,百度百科,是这样介绍的:JMS即Java消 ...
- 【9】JMicro微服务-发布订阅消息服务
如非授权,禁止用于商业用途,转载请注明出处作者:mynewworldyyl 1. JMicro消息服务目前实现特性 a. JMicro只支持发布订阅消息服务,不支持队列式消息服务: b. 不支持消息持 ...
- MQ消息队列(2)—— Java消息服务接口(JMS)
一.理解JMS 1.什么是JMS? JMS即Java消息服务(Java Message Service)应用程序接口,API是一个消息服务的标准或者说是规范,允许应用程序组件基于J ...
- WCF分布式开发步步为赢(13):WCF服务离线操作与消息队列MSMQ
之前曾经写过一个关于MSMQ消息队列的文章:WCF分布式开发必备知识(1):MSMQ消息队列 ,当时的目的也是用它来作为学习WCF 消息队列MSMQ编程的基础文章.在那篇文章里,我们详细介绍了MSMQ ...
- JMS(Java消息服务)入门教程
什么是Java消息服务 Java消息服务指的是两个应用程序之间进行异步通信的API,它为标准消息协议和消息服务提供了一组通用接口,包括创建.发送.读取消息等,用于支持JAVA应用程序开发.在J2EE中 ...
- “一切都是消息”--MSF(消息服务框架)入门简介
“一切都是消息”--这是MSF(消息服务框架)的设计哲学. MSF的名字是 Message Service Framework 的简称,中文名称:消息服务框架,它是PDF.NET框架的一部分. 1,M ...
- 分布式系统的消息&服务模式简单总结
分布式系统的消息&服务模式简单总结 在一个分布式系统中,有各种消息的处理,有各种服务模式,有同步异步,有高并发问题甚至应对高并发问题的Actor编程模型,本文尝试对这些问题做一个简单思考和总结 ...
- java消息服务学习之JMS概念
JMS即Java消息服务(Java Message Service)应用程序接口是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信. ...
- “一切都是消息”--iMSF(即时消息服务框架)入门简介
“一切都是消息”--这是iMSF(即时消息服务框架)的设计哲学. MSF的名字是 Message Service Framework 的简称,由于目前框架主要功能在于处理即时(immediately) ...
随机推荐
- 安卓与IOS移动段浏览器视频与音频的问题与总结
1. 安卓.苹果移动浏览器上都不支持html5的视频与音频自动播放 2. 安卓.苹果移动浏览器要支持播放,前提是必须是用户触发的事件 3. 针对这个特殊的问题,代码需要在用户进来第一次屏幕触发中,去创 ...
- JavaScript中的apply,call与this的纠缠
1.apply定义 apply:调用函数,并用指定对象替换函数的 this 值,同时用指定数组替换函数的参数. 语法:apply([thisObj[,argArray]]) thisObj 可选.要用 ...
- Ubuntu 下安装QT
Ubuntu 下安装QT 本文使用的环境 QT Library: qt-everywhere-opensource-src-4.7.4.tar.gz QT Creator: qt-creator-li ...
- SQL Tuning 基础概述05 - Oracle 索引类型及介绍
一.B-Tree索引 三大特点:高度较低.存储列值.结构有序 1.1利用索引特性进行优化 外键上建立索引:不但可以提升查询效率,而且可以有效避免锁的竞争(外键所在表delete记录未提交,主键所在表会 ...
- Java豆瓣电影爬虫——小爬虫成长记(附源码)
以前也用过爬虫,比如使用nutch爬取指定种子,基于爬到的数据做搜索,还大致看过一些源码.当然,nutch对于爬虫考虑的是十分全面和细致的.每当看到屏幕上唰唰过去的爬取到的网页信息以及处理信息的时候, ...
- windows环境tomcat8配置Solr5.5.1
前言 前前后后接触Solr有一个多月了,想趁着学习Solr顺便把java拾起来.我分别用4.X和5.X版本在windows环境下用jetty的方式.tomcat部署的方式自己搭建了一把.其中从4.x到 ...
- 学习javascript数据结构(三)——集合
前言 总括: 本文讲解了数据结构中的[集合]概念,并使用javascript实现了集合. 原文博客地址:学习javascript数据结构(三)--集合 知乎专栏&&简书专题:前端进击者 ...
- .NET文件并发与RabbitMQ(初探RabbitMQ)
本文版权归博客园和作者吴双本人共同所有.欢迎转载,转载和爬虫请注明原文地址:http://www.cnblogs.com/tdws/p/5860668.html 想必MQ这两个字母对于各位前辈们和老司 ...
- 通过向页面写html代码导出excel
//excel文件名 string filename = "考勤汇总"; StringBuilder ExcelHtml = new StringBuilder(); ExcelH ...
- 分享一个单点登录、OAuth2.0授权系统源码(SimpleSSO)
SimpleSSO 关于OAuth 2.0介绍: http://www.ruanyifeng.com/blog/2014/05/oauth_2_0.html 系统效果: 登录界面: 首页: 应用界面: ...