随笔分类 -  RocketMQ

about rocketmq
摘要:待续 阅读全文
posted @ 2017-05-21 00:14 飞丸亻 阅读(5297) 评论(0) 推荐(0) 编辑
摘要:我们先从client端看一个消息是如何发送到服务端,服务端又是如何解析消息的。 client端: 构造请求体: 构造请求体: 发送消息体: 下面看服务端: rocketmq的协议服务端解析救灾这里了RemotingCommand.decode(byteBuffer),我们来看下这个方法,具体是如何解 阅读全文
posted @ 2017-05-21 00:13 飞丸亻 阅读(4476) 评论(0) 推荐(0) 编辑
摘要:了解RocketMQ的都知道,它会保存所有的消息到本地文件。这个文件就是 MappedFile,每一个文件对应一个MappedFile.默认情况下大小位1g。 在MessageStoreConfig中的mapedFileSizeCommitLog设置,当然一半情况下是通过配置文件来设置的。文件路劲也 阅读全文
posted @ 2017-05-14 00:47 飞丸亻 阅读(2738) 评论(0) 推荐(0) 编辑
摘要:RocketMQ有很多的线程服务,这些服务都继承自抽象类ServiceThread。 这个抽象类可以单独抽出来用到我们其他的项目中来,仅仅需要修改下日志模块: 使用方法: 继承这个类,需要实现两个方法,一个来自runnable接口的run方法,一个是来自ServiceThread 的getServi 阅读全文
posted @ 2017-05-14 00:14 飞丸亻 阅读(992) 评论(0) 推荐(0) 编辑
摘要:刚刚在研究rocketmq生成文件的源码。零时记录一下MapedFileQueue中属性AllocateMapedFileService allocateMapedFileService的初始化链。 首先这个服务实在DefaultMessageStore中初始化完成并启动的,然后DefaultMes 阅读全文
posted @ 2017-05-13 23:58 飞丸亻 阅读(652) 评论(0) 推荐(0) 编辑
摘要:看完了上一篇的《RocketMQ 拉取消息-通信模块》,请求进入PullMessageProcessor中,接着 PullMessageProcessor.processRequest(final ChannelHandlerContext ctx, RemotingCommand request) 阅读全文
posted @ 2017-05-10 15:15 飞丸亻 阅读(5977) 评论(0) 推荐(0) 编辑
摘要:首先看server端:class NettyRemotingServer extends NettyRemotingAbstract implements RemotingServer 下面这个实现了com.alibaba.rocketmq.remoting.RemotingService中的sta 阅读全文
posted @ 2017-05-10 11:57 飞丸亻 阅读(5738) 评论(0) 推荐(0) 编辑
摘要:DefaultMessageStore 消息的存储和提取。 相对重要的两个方法: 消息存储 PutMessageResult putMessage(MessageExtBrokerInner msg) 消息获取 GetMessageResult getMessage(final String gro 阅读全文
posted @ 2017-05-10 09:49 飞丸亻 阅读(296) 评论(0) 推荐(0) 编辑
摘要:两篇精彩的文章: 《RocketMQ源码 — 三、 Producer消息发送过程》 《RocketMQ源码解析:Message存储》 rocketmq通过netty获取到消息请求后,直接掉处理模块,比如:SendMessageProcessor 这个处理类主要负责处理客户端发送消息的请求。 这个类实 阅读全文
posted @ 2017-05-07 23:53 飞丸亻 阅读(11063) 评论(1) 推荐(0) 编辑
摘要:这个异步调用方法中传入一个final 回调对象。 我们往上面看看这个回调对象的回调方法: 阅读全文
posted @ 2017-04-06 22:23 飞丸亻 阅读(4724) 评论(0) 推荐(0) 编辑
摘要:RocketMQ之broker读取本地文件数据 阅读全文
posted @ 2017-04-06 21:28 飞丸亻 阅读(1183) 评论(0) 推荐(0) 编辑
摘要:发现rabbitmq有一个ConnectionFactory。发现rocketmq好像没这个东西。按道理来说如果每次发送消息都新建一条连接肯定是不可能的。 ps:其实之所以是有上面的疑问是因为数据库连接池那个地方来的,因为数据库连接connection并没有说是线程安全的,所以为了线程安全会为每个事 阅读全文
posted @ 2017-04-04 14:38 飞丸亻 阅读(7743) 评论(0) 推荐(1) 编辑
摘要:http://www.tuicool.com/articles/umQfMzA 1.序言 今天来和大家探讨一下RocketMQ在消息存储方面所作出的努力,在介绍RocketMQ的存储模型之前,可以先探讨一下MQ的存储模型选择。 2.MQ的存储模型选择 个人看来,从MQ的类型来看,存储模型分两种: 需 阅读全文
posted @ 2017-04-03 15:15 飞丸亻 阅读(3010) 评论(0) 推荐(0) 编辑
摘要:原创文章,转载请注明出处:http://jameswxx.iteye.com/blog/2093785 一 机器部署 1.1 机器组成 1台nameserver 1台broker 异步刷盘 2台producer 2台consumer 1.2 硬件配置 CPU 两颗x86_64cpu,每颗cpu12核 阅读全文
posted @ 2017-04-03 14:57 飞丸亻 阅读(7375) 评论(1) 推荐(1) 编辑

点击右上角即可分享
微信分享提示