您当前的位置: 首页 >  中间件

科技D人生

暂无认证

  • 0浏览

    0关注

    1550博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

消息中间件学习总结(20)——主流MQ比较及MQ常见使用场景总结

科技D人生 发布时间:2020-09-02 13:35:15 ,浏览量:0

前言

MQ(Message Queue)消息队列,是基础数据结构中“先进先出”的一种数据机构。指把要传输的数据(消息)放在队列中,用队列机制来实现消息传递——生产者产生消息并把消息放入队列,然后由消费者去处理。消费者可以到指定队列拉取消息,或者订阅相应的队列,由MQ服务端给其推送消息。 消息队列中间件是分布式系统中重要的组件,主要解决应用解耦,异步消息,流量削锋等问题,实现高性能,高可用,可伸缩和最终一致性架构。

解耦:一个业务需要多个模块共同实现,或者一条消息有多个系统需要对应处理,只需要主业务完成以后,发送一条MQ,其余模块消费MQ消息,即可实现业务,降低模块之间的耦合。异步:主业务执行结束后从属业务通过MQ,异步执行,减低业务的响应时间,提高用户体验。

削峰:高并发情况下,业务异步处理,提供高峰期业务处理能力,避免系统瘫痪。

MQ同时也有其缺点:1、系统可用性降低。依赖服务也多,服务越容易挂掉。需要考虑MQ瘫痪的情况;2、系统复杂性提高。需要考虑消息丢失、消息重复消费、消息传递的顺序性;3、业务一致性。主业务和从属业务一致性的处理。

一、主流MQ 1、ZeroMQ

号称最快的消息队列系统,尤其针对大吞吐量的需求场景。扩展性好,开发比较灵活,采用C语言实现,实际上只是一个socket库的重新封装,如果做为消息队列使用,需要开发大量的代码。ZeroMQ仅提供非持久性的队列,也就是说如果down机࿰

关注
打赏
1662604032
查看更多评论
立即登录/注册

微信扫码登录

0.0428s