上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 27 下一页
  2020年2月18日
摘要: 使用 netty,在业务层我们通常是调用 channel.write 或 channel.writeAndFlush,但是代码一路跟下来,没有发现加锁动作。 原因是,netty 在创建 channel 的时候,为每个 channel 分配一个 IO 线程,为每个 handler 分配一个业务线程,所 阅读全文
posted @ 2020-02-18 15:34 偶尔发呆 阅读(585) 评论(0) 推荐(0) 编辑
  2020年2月6日
摘要: 以 nacos StatefulSet 的部署为例 pod 的名字分别是 nacos-0,nacos-1,nacos-2 进入容器查看 /etc/hosts 文件 kubectl exec -it nacos-0 --container k8snacos -- /bin/bash cat /etc/ 阅读全文
posted @ 2020-02-06 12:42 偶尔发呆 阅读(759) 评论(0) 推荐(0) 编辑
  2020年2月2日
摘要: java 中的对象,请求和响应都是一个 RemotingCommand 对象。 RemotingCommand code 请求码,请求码/响应码 CommandCustomHeader 对应的请求头 byte[] 请求体,非必需 如下是一个 RegisterBrokerRequestHeader 对 阅读全文
posted @ 2020-02-02 13:54 偶尔发呆 阅读(693) 评论(0) 推荐(0) 编辑
  2020年2月1日
摘要: demo public class ByteBufferTest { /** * 1. ByteBuffer 分为 2 种,HeapByteBuffer 和 DirectByteBuffer,即堆内和堆外 * 2. ByteBuffer 的使用,就是 put 和 get,同时伴随着移动 postit 阅读全文
posted @ 2020-02-01 16:28 偶尔发呆 阅读(229) 评论(0) 推荐(0) 编辑
摘要: java 引用分为强,软,弱,虚 强引用,即平常创建对象得到的引用,如果一个对象存在强引用,它是不会被 GC 回收的。 但是如果一个对象只有软引用或弱引用,则当发生 GC 时 软引用:如果内存不足,则回收 弱引用:不管内存是否充足,回收 这里主要总结下弱引用的使用方法:弱引用对象被回收时,对象被回收 阅读全文
posted @ 2020-02-01 13:36 偶尔发呆 阅读(369) 评论(0) 推荐(0) 编辑
  2020年1月31日
摘要: DefaultMQPushConsumerImpl 拉取消息,放入 processQueue 的 TreeMap 中 // org.apache.rocketmq.client.impl.consumer.DefaultMQPushConsumerImpl#pullMessage boolean d 阅读全文
posted @ 2020-01-31 13:50 偶尔发呆 阅读(2129) 评论(0) 推荐(0) 编辑
  2020年1月30日
摘要: producer 在发送消息的时候,会生成一个 "唯一" 的 msgId,broker 会为这个 msgId 创建哈希索引 UNIQ_KEY 由客户端生成 org.apache.rocketmq.common.message.MessageClientIDSetter#createUniqID ms 阅读全文
posted @ 2020-01-30 13:10 偶尔发呆 阅读(1725) 评论(0) 推荐(0) 编辑
  2020年1月22日
摘要: netty 是用 Recycler 实现对象池。 每个线程有一个 ThreadLocalMap 变量,ThreadLocalMap 本质是一个哈希表,用 index + 1 来避免槽冲突,键是 ThreadLocal 变量,值是尖括号里的对象。netty 里面大量使用 ThreadLocal,目的是 阅读全文
posted @ 2020-01-22 20:30 偶尔发呆 阅读(747) 评论(0) 推荐(0) 编辑
  2020年1月20日
摘要: linux 分用户态和内核态,两者权限不一样,逻辑地址空间不一样 以 write 为例,用户程序可能是把数据写入了自己的缓冲区,然后把用户进程缓冲区的数据拷入内核缓冲区,再刷到磁盘 read 则是,把内核缓冲区的数据拷入用户进程缓冲区,再从用户进程缓冲区取出数据 而对于零拷贝: mmap 针对文件 阅读全文
posted @ 2020-01-20 16:41 偶尔发呆 阅读(156) 评论(0) 推荐(0) 编辑
摘要: // org.apache.rocketmq.store.AllocateMappedFileService // 创建 MappedFile 的请求 static class AllocateRequest implements Comparable<AllocateRequest> { // F 阅读全文
posted @ 2020-01-20 15:40 偶尔发呆 阅读(680) 评论(0) 推荐(0) 编辑
上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 27 下一页