《专题四 服务化改造》之《第三章 【补充资料】常见消息中间件应用详解》之《第七节 分布式消息中间件设计篇》《第八节 Activemq》

《3.7.1 消息中间件设计篇》

  • 13 27 消息中间件常用的协议:
    在这里插入图片描述
    为什么不使用HTTP协议?1,HTTP格式更复杂,不需要;2,HTTP是短连接,MQ基本是长连接

  • 23分 常用持久化方式:
    在这里插入图片描述

  • 26 49 常用的消息中间件分发策略:
    在这里插入图片描述

  • 29 4 高可用方案:
    1)主从共享:
    在这里插入图片描述
    2)主从同步:
    通常生产者写master; 可以负载均衡在这里插入图片描述
    3)多主集群同步
    4)多主集群转发
    5)master-slave与Broker-cluster结合 :
    在这里插入图片描述

《3.8.1 ActiveMQ入门》

在这里插入图片描述

  • JMS于不同的MQ,可类似于JDBC对应于不同的数据库驱动程序:
    在这里插入图片描述
  • 4 43 JMS的消息结构:
    在这里插入图片描述

《3.8.2 ActiveMQ支持的消息协议》

  • 12 18 NIO:
    在这里插入图片描述
  • 35 10 用组播形式自动发现服务器
  • 38 50 MQTT协议多用于物联网:
    在这里插入图片描述
  • 40 30 服务质量(QoS):
    在这里插入图片描述

《3.8.3 Activemq高可用集群方案》

  • 延时、调度消息 http://activemq.apache.org/delay-and-schedule-message-delivery.html
    需要在activemq.xml的broker结点中配置schedulerSupport="true"

  • 4 39 ActiveMQ的几种集群方式:
    在这里插入图片描述

    • Shared filesystem/database Master-Slave部署方式如下图。解决的是Broker单点故障/故障切换的问题,即为了高可用。
      在这里插入图片描述
    • Broker-Cluster 部署方式如下图。原理在于Broker也可以作为消费者去读取其它Broker的消息。可通过static或者multicast的方式部署。主要目的是为了负载均衡
      在这里插入图片描述
    • 32 30 Master-Slave与Broker-Cluster结合如下图。既高可用,也可以负载均衡
      在这里插入图片描述

《3.8.4 持久化和事务机制》

  • kahaDb
  • 13 35+ 事务机制
  • 17 45 在消费者端开启事务,rollback会导致MQ重发消息,重发次数默认6
  • 20 35 不需使用事务,Consumer设置确认模式为客户端手动确认:session = conn.createSession(false, Session.CLIENT_ACKNOWLEDGE); 没有acknowledge,也可以进行
// 消息重发
                            finalSession.recover();
  • 21 49 永久订阅者:即使客户端离线,当它再次连接上时,会得到所有自己离线时发送到topic的消息
  • 32分 Consumer可按属性筛选消息

猜你喜欢

转载自blog.csdn.net/qq_23204557/article/details/112061939
今日推荐