玩法平台-测评任务-MNS评测-任务组的测评





笔记来源于:任务
玩法平台-测评任务-MNS评测-任务组
阿里云消息服务MNS
接下来测评应用场景——在线抽奖设计
1.
在线抽奖系统的设计架构如下:
用户参与抽奖,抽奖信息通过SLB负载均衡发送至前端抽奖集群,同时后端的管理集群通过奖品数据库获取奖品信息,并注入奖品至奖品队列,奖品队列读取奖品信息送至前端抽奖集群,前端抽奖集群将中奖消息发送至中奖信息队列,再由后端管理集群以短信或者邮件推送的方式将发奖通知下发给用户;
奖品队列还可以通过云监控将奖品信息发送至后端管理集群,后端管理集群以短信或者邮件推送的方式完成发奖通知;发奖通知主题通知实时数据统计系统进行中奖统计。
2.
前端抽奖系统与后端奖品系统松耦合
抽奖系统后端管理集群随机生成奖品信息,由奖品队列完成用户在线抽奖。
3.
完成中奖信息的判定、中奖信息的同步和用户的通知
通过两个队列实现中奖信息同步,将中奖信息实时推送给用户,既保证中奖信息的时效性又满足了用户的体验感。
4.
推荐搭配使用消息队列MQ
下图能更清晰的看出在线抽奖设计的架构:

we_ui_refresh
上一篇
阿里云消息服务MNS——应用场景
● 关闭未支付订单
这是订单未支付后的业务逻辑处理,它会在用户未支付时出发定时任务,关闭未支付订单。
➢ 当用户预定一个商品后订单系统会生成付款检查任务到消息服务Queue并延迟30分钟,消息服务Queue读取任务,任务消息设置为30分钟可见,任务再到达后台任务处理服务系统,完成消费到付款的任务消息;
➢ 当用户预定一个商品后订单系统会创建订单,商品库存减1,经数据库读取订单付款信息后发送至后台任务处理系统进行处理;
➢ 如果订单未付款,订单付款超时库存加1,后台任务处理系统再将消息反馈给数据库。
● 创建定时消息
➢ 创建定时消息可以定时去检查交易中需要关闭的订单或者超时未付款订单是否已付款,大大减少了商品生产和消费的时间差。
● 完成定时通知
➢ 定时通知可以提醒用户及时完成未支付订单的付款,既能便利用户又能满足通过消息触发定时任务的业务场景设计。
● 推荐搭配使用消息队列MQ,E-MapReduce,实时计算Fink版,使用户体验更佳。
下一篇
MNS队列模型、主题模型对比测评
%1. 模式对比:
“队列模型”顾名思义,和排队一样,只能一个结束再进行另一个,所以是一对一的消费,这种一对一的消费模式有着高可靠、高并发的性能。
对于“主题模型”,多个相似风格才会形成一个主题,因此主题模型是支持一对多的消息通知方式。
%1. 消息流对比:
对于队列模型,像1中队列模型的模式所说,队里模型的消息流是依次进行的,无法同时并行将消息传递,可以根据下图来理解:
而主题模型的消息流是可以多个路径同时并发传递的,如下图:
%1. 特性对比:
队列模型具有多种特性,面对多变的应用场景,队列模型提供了多种队列模式;对于提高效率方面,队列模式具有同时并发访问的特性;在消息安全保障方面,队列模型具有消息投递保障、分布式事务消息、日志管理、云监控等功能。
主题模型在效率方面具有一对多广播消息及消息棉签过滤等性能,并对消息通知方式进行优化提供多种消息格式;消息的安全可靠方面同样具有投递保障、日志管理及云监控的特性。
%1. 相关名词:
在队列模式中,区分了普通及延时队列,对生产者、消费者及消息类别、消息状态做了解释。
在主题模式中,对发布者、推送地址、订阅者以及访问域名地址做了解释。
其中队列模式消息状态的转换过程如下:
延迟消息发送到队列后状态为Delayed, 经DelaySeconds属性值设定的时间后状态变成Active,超时的状态被垃圾回收器回收。
消息生命周期过程如下:
生产者发送消息到队列
消费者获取消息并开始计时
消费者在计时完成前删除消息
评论