阿里云ONS而微软Azure Service Bus体系结构和功能比较
阿里云ONS而微软Azure Service bus体系结构和功能比较
版权所有所有,转载请注明出处http://blog.csdn.net/yangzhenping。谢谢!
阿里云的开放消息服务:
一、如图所看到的,ProducerID1 的producer 实例有三个,可能是部署在三个机器上的三个进程,也可能是一台机
器上的三个进程。
每一个实例都会发送TopicA 的消息。同理,ProducerID2 与之类似。
二、ConsumerID1 有三个实例,假设是集群消费方式,那么每一个实例消费TopicA 的1/3 的消息,假设是广播消
费方式,那么每一个实例消费全量的消息。另外。TopicA 也能够被另外的ConsumerId 再次消费。
微软的service bus:
一、与阿里云类似,微软的Service bus中消息也能够由多个进程产生。
二、消费Topic中消息由Consumer进程在创建subscription(订阅)时開始监听全部当前Topic中产生的消息,当前subscription中的消息被消费之后,
在当前subscription中就没有了,可是在当前Topic的其它subscription中还存在。事实上就是Topic把产生的消息都广播发送到每个当前Topic下的subscription下。
这和阿里云的广播不一样,阿里云广播消息是指Product进程广播给Consumer进程。而service bus是Product进程发送消息给Topic。由Topic广播给每一个Topic下的subscription,然后由每一个consumer独自去消费每一个subscription中的消息。
service bus除了提供Topic,还有Queues,Relays,Notification Hubs等类型。
其它差别:
1.ONS消息不支持有序,service bus中Queues支持消息有序。
2.ONS消息仅仅保存3天,service bus中的消息假设不被消费且其当前Topic存在。就永远不会被删除。
3.ONS不能保证消息反复,service bus消息不反复。
4.ONS临时仅仅支持Javaclient。service bus支持.net,java,php,phthon:http://msdn.microsoft.com/en-us/library/azure/jj841071.aspx
5.ONS新创建的 ConsumerId从哪里開始消费
a) 假设订阅的 topic 第一次发送消息是在3天内,那么这个新创建的 ConsumerId默认从server保存的最早消息開始消费
b) 假设订阅的topic第一次发送消息是在 3天前,那么这个新创建的ConsumerId默认从server保存的最晚消息開始消费 ,也就是队列尾部历史不会再消费
c) 假设这个ConsumerId是第二次启动。那么从上消费的位置開始消费
d) 用户假设想从特定位置開始消费,能够通过ONS Console上消 费进度重置功能,指定到详细的时间開始上消费进度重置功能。每次重置仅仅针对特定 ConsumerId下的特定 下的特定 Topic,不会影响其它ConsumerId。
关于第5点,这个service bus和ONS类似,只是不是3天。而是Topic创建和subscription创建的时间差,个人觉得ONS中的CunsumerId和service bus中的subscriptionId非常像,ONS有时间定位的功能,可是service bus眼下没有,必须从头到尾一条一条取。
注意:个人透露一点,service bus经常不稳定的网络传输,ONS此外,还可能有类似问题,在实际项目,我们用了SQL Server+WCF备择方案。
阿里云ONS而微软Azure Service Bus体系结构和功能比较的更多相关文章
- Windows Azure Service Bus Topics实现系统松散耦合
前言 Windows Azure中的服务总线(Service Bus)提供了多种功能, 包括队列(Queue), 主题(Topic),中继(Relay),和通知中心(Notification Hub) ...
- 微软云消息队列 Azure service bus queue
前言 第一次使用消息队列,遇到了一些问题:同一个消息有多次出列.是一个消息只入列一次,还是多次?还是因为出列问题,出列了多次? Microsoft Azure service bus queue Az ...
- Windows Azure Service Bus (6) 中继(Relay On) 使用VS2013开发Service Bus Relay On
<Windows Azure Platform 系列文章目录> 注意:本文介绍的是国内由世纪互联运维的Windows Azure服务. 项目文件请在这里下载. 我们在使用Azure平台的时 ...
- Azure Service Bus(二)在NET Core 控制台中如何操作 Service Bus Queue
一,引言 上一篇讲到关于 Azure ServiceBus 的一些概念,讲到 Azure Service Bus(服务总线),其实也叫 "云消息服务",是微软在Azure 上提供的 ...
- Azure Service Bus(一)入门简介
一,引言 今天开始学习新的内容 Azure Service Bus(服务总线),其实也叫 "云消息服务",和 RabbitMQ,KafKa的一样都是作为消息通信服务,但是它们直接还 ...
- 【结果很简单,过程很艰辛】记阿里云Ons消息队列服务.NET接口填坑过程
Maybe 这个问题很简单,因为解决方法是非常简单,但填坑过程会把人逼疯,在阿里云ONS工作人员.同事和朋友的协助下,经过一天的调试和瞎捣鼓,终于解决了这个坑,把问题记下来,也许更多人在碰到类似问题的 ...
- Azure Service Bus 中的身份验证方式 Shared Access Signature
var appInsights=window.appInsights||function(config){ function r(config){t[config]=function(){var i= ...
- Windows Azure Service Bus (2) 队列(Queue)入门
<Windows Azure Platform 系列文章目录> Service Bus 队列(Queue) Service Bus的Queue非常适合分布式应用.当使用Service Bu ...
- Windows Azure Service Bus Notification Hub推送通知
前言 随着Windows Azure 在中国的正式落地,相信越来越多的人会体验到Windows Azure带来的强大和便利.在上一篇文章中, 我们介绍了如何利用Windows Azure中的Servi ...
随机推荐
- 李洪强漫谈iOS开发[C语言-021]-运算符
- Altium designer入门篇-过孔不开窗
有没有觉得在设计PCB的时候,放的过孔开窗了,在焊接实际PCB板子的时候,会有各种锡尖,拖锡尾巴,严重的网络间短路.此经验简述了使用Altium designer软件,让过孔不开窗的设置办法.初学者可 ...
- 169. Majority Element
题目: Given an array of size n, find the majority element. The majority element is the element that ap ...
- 【PythonChallenge】Level 5
题目主要找发声类似于Peak Hell的Python模块,查了一下手册pickle已经是最像的了.看了一下源代码,发现panner.p.如同发现了新大陆,拷贝内容.使用pickle解答.答案为chan ...
- Android开发之permission
permission,Android权限系统. 基本上都是在manifest.xml文件中进行操作. 1.申请使用权限 申请使用权限使用标记:<uses-permission /> 比如申 ...
- 浏览器编辑HTML
运行效果: 浏览器编辑HTML // test.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&q ...
- ☀【Grunt】no such file or directory, imagemin
JPG image optimization not workinghttps://github.com/gruntjs/grunt-contrib-imagemin/issues/16 npm un ...
- 【 D3.js 选择集与数据详解 — 3 】 绑定数据的顺序
data() 函数有两个参数,第一个是被绑定数据,第二个参数用于指定绑定的顺序.在数据需要更新的时候常常会用到. 默认的情况下,data()函数是按照索引号依次绑定数组各项的.第0个元素绑定数组的第0 ...
- Java问题汇集(1)
1.javax.el.PropertyNotFoundException: Property 'Price' not found on type pet.petshop.dto.WareDto 简答: ...
- 关于 unity5.3.1 录制 animation 带有 rotation 信息打包 Android 会运动错乱的问题
Unity5.3.1 录制 animation 带有 rotation 信息打包 Android 会运动错乱的问题 ,临时解决方法是:在动画面板中点击 rotation 属性,右键选择菜单中 ...