03 2023 档案
摘要:class转map public static void convetMap(Class clazz){ Field[] field = clazz.getDeclaredFields(); String str="map.put(\"%s\",%s.get%s());"; Arrays.strea
阅读全文
摘要:高可用 多副本机制: 主副本和从副本,从副本只负责同步主副本数据,只有主副本进行读写。 高并发 网络结构设计 多路复用 多selector -> 多线程-> 多队列 高性能 写 把数据先写入os cache 然后顺序写入磁盘 读 根据稀疏索引快速定位到要消费消息 零拷贝机制,减少上下文切换和cpu拷
阅读全文
摘要:1、HashMap 的内部数据结构 目前我用的是 JDK1.8 版本的,内部使用数组 + 链表 / 红黑树链表大于8转换成红黑数,红黑树节点小于6退化为链表 2、HashMap插入数据流程 判断数组是否为空,为空进行初始化; 不为空,计算 k 的 hash 值,通过 (n - 1) & hash计算
阅读全文
摘要:1.什么是零拷贝 零拷贝是指计算机在执行IO操作的时候, CPU不需要将数据从一个存储区复制到另一个存储区, 进而减少上下文切换以及 CPU 拷贝的时间, 这是一种IO操作优化技术 零拷贝不是没有拷贝数据, 而是减少用户态, 内核态的切换次数 和 CPU拷贝次数 2. 传统IO 3. 实现方式 3.
阅读全文