随笔分类 -  MQ

摘要:消息中间件的作用: 1、解耦 2、冗余(存储) 3、扩展性(增加生产者/消费者) 4、削峰 5、异步处理 6、保证顺序 消息通信标准: 1、JMS(Java Message Service):隐藏单独MQ产品提供商的实际接口。针对API编程,选择合适的MQ驱动(该驱动实现了JMS接口规范)即可随意切 阅读全文
posted @ 2020-03-27 19:23 陈标 阅读(283) 评论(0) 推荐(0)
摘要:RabbitMQ是实现了高级消息队列协议(Advanced Message Queueing Protocol , AMQP)的开源消息代理软件(亦称面向消息的中间件)。 1、AMQP协议 RocketMQ基于JMS(Java Messaging Service , java 消息服务)协议。 重点 阅读全文
posted @ 2019-09-29 20:01 陈标 阅读(513) 评论(0) 推荐(0)
摘要:基于的原理: 1、两阶段提交 2、定时事务状态回查。 阅读全文
posted @ 2019-08-15 05:53 陈标 阅读(128) 评论(0) 推荐(0)
摘要:主从同步(HA 高可用) 主从同步原理: 为了保证系统的高可用,消息到达主服务器后,需要将消息同步到从服务器。如果主服务器宕机,消费者可用从从服务器拉取消息。 大体步骤: 1、主服务器启动,监听从服务器的链接。 2、从服务器主动链接主服务器,建立TCP相关链接。 3、从服务器主动向主服务器发送待拉取 阅读全文
posted @ 2018-12-24 12:03 陈标 阅读(3181) 评论(0) 推荐(0)
摘要:消息消费 难点:如何保证消息只消费一次? 顺序消费? 消费模式: 1、单一消费模式:一条消息,仅被一个消费者进行消费。 如何进行负载?负载算法有 a、平均分配。b、平均轮询分配。c、一致性hash(不推荐)。d、根据配置,为消费者指定消息队列。e、根据broker进行分配,消费者固定消费指定的Bro 阅读全文
posted @ 2018-12-24 00:35 陈标 阅读(919) 评论(0) 推荐(0)
摘要:消息存储 主要的存储文件: 1、消息文件(commitLog) 2、消息消费队列文件(consumeQueue) 3、Hash索引文件(IndexFile) 4、检测点文件(checkpoint) 5、关闭异常文件(abort) 文件刷盘机制 RocketMQ的存储与读写是基于JDK NIO的内存映 阅读全文
posted @ 2018-12-24 00:07 陈标 阅读(471) 评论(0) 推荐(1)
摘要:消息发送基本流程: 1、消息验证 验证主题(topic),消息体不能为空和大小不能超过4M。 2、路由查找 a、查看缓存,是否有topic的路由信息。 b、如果没有则到NameServer中获取路由信息,如果缓存内能找到则获取相应路由信息。 c、从缓存中获取上一次异常的Broker节点信息,跟获取到 阅读全文
posted @ 2018-12-23 23:08 陈标 阅读(717) 评论(0) 推荐(0)
摘要:NameServer 路由管理,服务注册,服务发现。(类比为soa框架中的zookeeper) 一、路由管理 1、路由注册,由 Broker 向 NameServer 发送心跳,NameServer 记录Broker服务。 2、路由删除, a、NameServer 定时检测 Broker 状态,将判 阅读全文
posted @ 2018-12-23 14:20 陈标 阅读(357) 评论(0) 推荐(0)
摘要:Rocket 火箭 MQ的作用:同步转异步(异步解耦)。 难点:如何确保消息一定被消费,而且仅消费一次。 1、消息架构:生产者、服务器、消费者、路由发现。 2、消息顺序:严格按照消息到达服务器的顺序进行消费。 3、消息过滤: a、服务端过滤 b、消费端过滤。 缺点:无用的消息也传输到消费端。优点:可 阅读全文
posted @ 2018-12-23 12:12 陈标 阅读(256) 评论(0) 推荐(0)
摘要:Maven 配置文件 provider 生产者代码 Consumer 消费者 Constants 常量类 阅读全文
posted @ 2018-12-16 17:07 陈标 阅读(167) 评论(0) 推荐(0)
摘要:JMS Java Message Service (Java 消息服务), 类似于JDBC的作用。 1、Destination 目的地 2、Provider 生产者 3、Comsumer 消费者 4、消息类型 A、Queue 队列,只消费一次。(P2P 点对点模型) 消息确认机制(自动确认,手动确认 阅读全文
posted @ 2018-12-16 13:50 陈标 阅读(152) 评论(0) 推荐(0)