随笔分类 -  消息队列

摘要:安装 首先要安装好zookeeper1. 解压安装包 tar -zxvf kafka.tgz2. 配置 vim kafka/config/server.properties3. 进入bin目录启动服务 cd kafka/bin ./kafka-server-start.sh -daemon ../c 阅读全文
posted @ 2022-02-12 23:24 吴磊的 阅读(81) 评论(0) 推荐(0) 编辑
摘要:mqtt协议 MQTT协议(消息队列遥测传输协议) 是基于 Publish/Subscribe 模式的一种低开销、低带宽占用的即时通讯协议。是基于TCP协议传输的;他也有UDP版本,叫做MQTT-SN。 Qos (消息服务质量) 消息服务质量 又称 可靠传输保证;他又有三种消息发布服务质量 支持 Q 阅读全文
posted @ 2022-02-12 16:16 吴磊的 阅读(524) 评论(0) 推荐(0) 编辑
摘要:broker启动之后,发送注册请求是通过线程池来处理请求的,默认是30s一次,也就是说注册成功后,会每隔30s发送一次心跳机制。 namesrvcontroller 收到请求后会进行解析,解析成功后就通过 会通过 RouteInfoManager 这个寄存器保存broker的注册信息,那我们就看看它 阅读全文
posted @ 2021-07-09 17:42 吴磊的 阅读(739) 评论(0) 推荐(0) 编辑
摘要:broker发起注册 broker启动的时候会先对一些组件初始化,初始化完成后就会调用 start() 方法进行启动。这个时候它会先启动各个组件,然后通过线程池去发起注册请求。 此时就先 对 topic 进行一些配置,然后就通过 brokerOuterAPI 组件去进行调用。可以看到它是先构造了请求 阅读全文
posted @ 2021-07-08 12:39 吴磊的 阅读(396) 评论(0) 推荐(0) 编辑
摘要:nameserver 创建nameserver 可以看到我们启动 nameserver,就是执行 NamesrvStartup 类的main方法。看起来比较简单,应该就是创建了一个nameserver的控制器然后启动,这样 broker 就可以注册上来了。 首先,我们就看看 createNamesr 阅读全文
posted @ 2021-07-07 12:14 吴磊的 阅读(568) 评论(0) 推荐(1) 编辑
摘要:发送丢失 我们发送消息时,broker写入到cache后就返回成功了,而producer只要获取到ACK就说明消息发送成功了,反之肯定会收到一个异常,比如网络错误、请求超时之内的。而当我们发送失败后一直重试发送,能保证消息一定到达MQ吗?比如这样: 本地事务执行完之后、数据库已经更新了,还没来的及发 阅读全文
posted @ 2021-04-08 15:06 吴磊的 阅读(1719) 评论(0) 推荐(1) 编辑
摘要:消息发送 普通发送消息,是直接根据topic的queue最终写入到commitlog的,然后可以被消费者消费。比如现在往broker的orderTopic发送事务,不会先把half消息的offset写入orderTopic的queue里面去,而是写入broker内部的“RMQ_SYS_TRANS_H 阅读全文
posted @ 2021-04-07 17:31 吴磊的 阅读(832) 评论(0) 推荐(0) 编辑
摘要:消息发送 Topic Topic用于将消息按主题做划分,Producer将消息发往broker中指定的Topic,Consumer订阅该Topic就可以收到这条消息。Topic跟发送方和消费方都没有强关联关系,发送方可以同时往多个Topic投放消息,消费方也可以订阅多个Topic的消息。在Rocke 阅读全文
posted @ 2021-04-01 17:39 吴磊的 阅读(1275) 评论(0) 推荐(0) 编辑
摘要:RocketMQ是一个分布式消息中间件,主要包含了4个模块: NameServer:管理集群里所有Broker的信息,让使用MQ的系统可以通过他感知到集群里有哪些Broker。 Broker:集群最核心模块,主要负责Topic消息存储、消费者的消费位点管理(消费进度)。 Product:消息生产者, 阅读全文
posted @ 2021-03-12 17:25 吴磊的 阅读(1987) 评论(0) 推荐(0) 编辑
摘要:安装Erlang wget https://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm sudo rpm -Uvh erlang-solutions-1.0-1.noarch.rpm sudo yum install 阅读全文
posted @ 2019-06-05 23:07 吴磊的 阅读(3483) 评论(0) 推荐(1) 编辑
摘要:1. Rocketmq消费模型(实时性) 常见的数据同步方式有这几种: push:producer发送消息后,broker马上把消息投递给consumer。这种方式好在实时性比较高,但是会增加broker的负载;而且消费端能力不同,如果push推送过快,消费端会出现很多问题。 pull:produc 阅读全文
posted @ 2019-05-19 19:06 吴磊的 阅读(2808) 评论(0) 推荐(0) 编辑
摘要:1. rocketmq源码安装参考官方文档:http://rocketmq.apache.org/docs/quick-start/安装好jdk和maven rocketmq安装包:https://pan.baidu.com/s/1I3CqWaxFnxtUX1kJpIJkcQ 密码: vu5m 代码 阅读全文
posted @ 2019-04-08 00:05 吴磊的 阅读(7015) 评论(0) 推荐(2) 编辑
摘要:这里是基于 zookeeper 选举方式实现的集群配置,服务器过半数才可提供服务,所以是2n+1台这里以三台为例。 只有master节点能提供服务,slave节点无法提供服务,只有当master节点挂了,slave重新选举出的主节点才能提供服务(灰色部分都是默认配置文件) <!-- Licensed 阅读全文
posted @ 2018-10-23 13:04 吴磊的 阅读(633) 评论(0) 推荐(0) 编辑
摘要:1. 解压 tar -zxvf apache-activemq-5.12.0-bin.tar.gz2. 改名 mv apache-activemq-5.12.0 activemq3. cd activemq/bin4. 启动 ./activemq start5. 访问 ip:8161/admin / 阅读全文
posted @ 2018-10-18 17:49 吴磊的 阅读(1172) 评论(0) 推荐(0) 编辑

//生成目录索引列表
点击右上角即可分享
微信分享提示