设为首页 收藏本站
查看: 484|回复: 0

[经验分享] 消息队列学习

[复制链接]

尚未签到

发表于 2017-7-4 21:53:33 | 显示全部楼层 |阅读模式
DSC0000.png

DSC0001.png

DSC0002.png



  exchange:一个应用对应一个exchange
  Routing key:exchange根据routing key的配置,决定将消息路由到哪个队列

  为了确保消息不会丢失,RabbitMQ支持消息确认机制。客户端在接受到消息并处理完后,可以发送一个ack消息给RabbitMQ,告诉它该消息可以安全的删除了。假如客户端在发送ack之前意外死掉了,那么RabbitMQ会将消息投递到下一个consumer客户端。如果有多个consumer客户端,RabbitMQ在投递消息时是轮询的。
  RabbitMQ如何判断客户端死掉了?唯一根据是客户端连接是否断开。这里没有超时机制,也就是说客户端可以处理一个消息很长时间,只要没断开连接,RabbitMQ就一直等待ack消息。
  消息确认机制默认是打开的,除非你设置no_ack=True标记来手工关闭它。
消息消费者
1. 消费者配置并发消费者个数
  如果消费者对消息的时序不是特别敏感,建议配置合适的并发消费者,增加消费能力,防止只有一个消费者阻塞时造成消息积压。
2. 消费者配置每次读取消费个数
  跟上面的场景类似,配置prefetchCount,决定每次读取消息时,获取消息的个数,可以减少网络的传输次数,提高消费能力,但是会降低消息的时序性。
3. 消费者消费消息时不抛出异常
  如果消费消息时抛出异常,则消息无法正常的ack,会重新放回队列,重新发送此消息,如果还无法消费,会一直重发,相当于死循环状态,影响后续的消息处理和整个MQ server的性能。
4. 评估消费能力
  有一个基本原则是消费能力应该大于生产能力,否则就会造成消息的积压
  MQ允许少量的消息积压,消息积压会降低MQserver的性能
  大量的消费积压会触发报警,而且大量积压会触发内存流控,影响整个集群
消息生产者
1. 生产者实现消息发送失败重发
  应用系统发送时,建议如果出错的话可以存储到本地数据库或文件系统,然后实现定时重发或手动重发。
参考文章
  如何用消息系统避免分布式事务
  消息队列设计精要
  使用消息队列的 10 个理由
  我的github博客

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-390798-1-1.html 上篇帖子: 移动互联网广告 下篇帖子: 1269: [AHOI2006]文本编辑器editor
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表