![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
消息中间件
文章平均质量分 68
煎蛋的梦
快速反应、敏捷、完美、乐于分享
展开
-
RocketMQ 的疑惑--131072 数字解答
今天又时间看看 Rocketmq 的源码。发现一个有趣的数字:131072=(2^10) * (2^7) =128 k 在 Rocketmq 中。设置数字非常有意思: 1、在 Netty 中设置 Socket 的接收、发送的缓存区大小 2、在发送消息的时候,校验该消息的大小 为什么需要这样设置呢?为什么需要控制消息的大小呢? 因为在 TCP 协议中其 socket接收缓冲的内存的默认值是原创 2016-04-10 13:43:18 · 1734 阅读 · 0 评论 -
RocketMQ 高性能存储
转载:http://blog.csdn.net/fcbayernmunchen/article/details/8635427Java类库中的NIO包相对于IO 包来说有一个新功能是内存映射文件,日常编程中并不是经常用到,但是在处理大文件时是比较理想的提高效率的手段。本文我主要想结合操作系统中(OS)相关方面的知识介绍一下原理。在传统的文件IO操作中,我们都是调用操作系统提供的底层标准IO系统调用函原创 2016-08-06 16:51:27 · 1886 阅读 · 0 评论 -
RocketMQ-- 建议去 slave 拉取消息
在 RocketMQ 中,虽然消息先存放在内存中,在刷到硬盘中。但又可能消息已经落在了 硬盘中,导致了消费端去硬盘中中拉取消息,造就了 IO 过高的现象。但又一个几个参数我们是可以做调整的。参数列表如下: 当然啦。这几个参数的值我们是可以调整的。但我觉得,还是默认比较好。但这几个参数的相关使用在哪里呢?请看下面的截图: 注意啦!在 rocketmq 中,offset 增加 1 ,就表示 增加一个原创 2016-08-22 21:27:56 · 2271 阅读 · 0 评论 -
rockemtq 高可靠消息探究
RocketMQ 是基于内存方式保存消息,然后再刷硬盘的。如果我们想发送可靠的消息,哪些,有两种方式: 1、sendMessageWithVIPChannel 是否走 VIP 快速通道。 这个可以减少消息的丢失率。加快刷到硬盘的速度。这个通道很少生产者走的。所以,保证了消息稳定地到达了 broker 端,特别是 当 洪水般的消息涌过来的话,对于 金钱方面的消息,这个通道非常快速。原创 2016-08-22 21:59:32 · 591 阅读 · 0 评论 -
RocketMQ 发送消息疑问
我们都知道 rocketmq 发送消息有 3 中方式: 1、同步 同步发送消息,是可以拿到消息结果的, 2、oneway 方式 这种方式最适合发送日志啦,比如,最求速度的。可以采取这种方式。3、异步 这种方式有点误解了,其实这个也是返回结果的。 可以从第二种截图中看出,这里需要实现回调接口的。其实呢,不管是同步原创 2016-08-22 22:27:09 · 3339 阅读 · 0 评论 -
RocketMQ 消费进度
Rocketmq 拉取消息的时候,可能会保存消费进度的哦!且看一下的截图 因为拉取到的消息后,消费进度先刷 内存的。之后,由定时任务推送到 broker 端的。如果是 集群模式,消费进度都是保存在 broker 端的。 这里设置了标志位,这种方式非常聪明,减少了协议的头部的大小通过这 3 张截图,我们可以大致了解到。consumer 处理第一次消费这个队列的数据外,第二次之后,broker原创 2016-08-22 23:51:41 · 2722 阅读 · 0 评论 -
Rocketmq 文件名、msgId 生成规则
Rocketmq 的文件名的生成规则还是不错的。通过 offset 作为文件名。请看下图: UtilAll.offset2FileName(createOffset + this.mapedFileSize); 其中,mapedFileSize 的大小是可以配置的。 msgId 生成规则如下的截图所示: 为什么今天会提及这两个小家伙呢?今天忘记了 offset 的命名规则了。还可以 判断原创 2016-08-23 21:22:42 · 3105 阅读 · 0 评论 -
RocketMQ 的基础与规范
在公司里边,负责消息中间件这块工作,也进行了内部知识的交流。但效果不太明显呀!今天把一些 Rocketmq 的重要的知识点整理出来!Producer 消息生产者,负责产生消息,一般由业务系统负责产生消息。Consumer 消息消费者,负责消费消息,一般是后台系统负责异步消费。拉取后的消息,是放在线程池里面的。Pull Consumer Consumer 的一种,应用通常竹筒调用原创 2016-08-25 21:51:41 · 3989 阅读 · 0 评论 -
如何阅读阿里系的开源作品的源码
从大四开始,一直保持着阅读源码的习惯,也一直都从事中间件相关领域的产品开发,对于如何阅读源码和如何快速选型也有自己的心得于体会。 下面着重讲讲如何阅读 RocketMQ 的源码。首先,我们需要知道 RocketMQ 是啥东西?消息中间件,仅仅是这样还不够的呢?阿里很多中间件产品都有自己的概念,我...原创 2018-08-04 16:37:03 · 655 阅读 · 0 评论