消息队列MQ ,本质是个队列,其最简单的操作就是入队和出队,既按照程序决定何时何条件入队,和何时何条件出队。也就是说,遇到入队系统和出队系统的业务诉求不一致时的场景,就可以
……本2文来源gaodai.ma#com搞##代!^码@网3
搞代gaodaima码
考虑是否用消息队列来实现了。可应用场景有很多,以下是几个常见的场景和解释。
一:异步处理、应用解耦、分布式
二:峰值处理
场景:流量在各个时间点不均衡
案例:秒杀、抢购
解释:小明制作蛋糕的时间比较长,订单来到后先登记成一个清单,然后逐次按顺序制作,订单量过大时,会暂时挂出『已售完』的牌子。
实现: 使用单线程的工具将业务需求进行排队处理。当业务请求达到阀值时,给出友好提示并拒绝用户的需求。
注意点:对于消峰需求,可以高峰期挂出『暂时无法购买,请稍等』等提示,防止流量对后续业务的冲击。对于秒杀等抢完即停的需求,需要考虑超发问题,可以添加一个名额计数器,或者在秒杀名额已满员时,发放一个秒杀完成标记,后续处理程序检测到完成标记后,再进行后续处理。