Rocketmq
Lin大坑haha~
这个作者很懒,什么都没留下…
展开
-
Rocketmq和Kafka用到的zero copy,以及存储方面的相关思考
因为项目原因做过消息组件的研发,总结以下rocketmq和kafka涉及到的零拷贝技术。RocketMQ1.mmap内存映射文件传统的读写数据,write/read系统调用, 必须先把数据从磁盘拷贝至到内核缓冲区中(页缓冲),然后再拷贝到用户进程(内核态-》用户态)。用了mmap,把内核中特定部分的内存空间映射到用户级程序的内存空间去。用户空间和内核空间共享一块相同的内存。内核在这块地址内...原创 2020-02-01 20:16:25 · 1049 阅读 · 0 评论 -
RocketMQ IPV6改造笔记
2018年做的ipv6整改,整理一下主要改造点1.消息ID长度ipv6的ip长度是128位16个字节,ipv4只有4个字节32位,因此,我需要判断当前环境是否是IPv6,如果是的话,生产者发送到broker的消息,落盘前生成的messageID需要变长。 public final static int MSG_ID_LENGTH = 8 + 8;// ipv4 public final ...原创 2020-01-31 22:10:55 · 1162 阅读 · 4 评论