内容分为三部分,分别是消息队列的应用场景、消息队列的基本原理、最后是实际案例和总结
消息队列在实际场景中应用是非常广泛的,这里列举了其中的4种场景。下面举几个简单的例子:
异步处理:普通的rpc需要同步等待结果。消息队列提供了异步处理的机制,可以并行写入,串行消费。
应用解耦:这里举例是当视频属性有变更时,首先更新数据。然后需要将内容的变化告知收藏、推荐、搜索系统。常规的方案是,写三个回调接口。消息队列的方案是,三个服务分别订阅视频的变更、监听变更消息就行。
流量肖峰:cms管理台每天有大量的数据变更,如果通过接口请求数据库进行更新,数据库会直接崩掉;这时的消息队列就是缓冲。能够接管前台的大脉冲请求,然后异步慢速消费。
消息驱动:这里是用户参与app中活动,具体的中奖信息统一会在第二天12点左右通过push消息告知用户。