06
11
05
14
03
24
20
Kubernetes的设计解读 Kubernetes的设计解读
pod 设计解读在kubernetes中,创建、调度、管理的最小单位是pod pod是IP等网络资源的分配的基本单位,这个IP及其对应的network namespace是由pod里面的容器共享的 pod内的所有容器页共享volume。当
2022-03-20
20
Kafka核心技术 Kafka核心技术
生产者消息分区机制原理剖析Kafka的三级结构:主题 - 分区 - 消息 为什么要分区? 分区的作用是提供负载均衡的能力,不同的分区分布在不同的机器节点上,数据的读写都是针对分区的粒度进行。可通过增加机器来增加吞吐量 都有哪些分区策略
2022-03-20
14
常用的二次编码方式 常用的二次编码方式
为什么需要二次解码因为一次解码的结果是字节,需要和项目中所使用的对象做转换,方便使用,这层解码器可以称为“二次解码器”。相应的,对应的编码器是为了将java 对象转化成字节流方便传输存储。 一次编码器:ByteToMessageDecode
2022-03-14
14
编写网络应用程序基本步骤 编写网络应用程序基本步骤
编写网络应用程序基本步骤: 需求分析 定义业务数据结构 实现业务逻辑 选择传输协议 定义传输信息结构 选择编解码包括:1、数据本身编解码2、压缩等编解码3、粘包/半包处理编解码 实现所有的编解码 编写应用程序 测试与改进
2022-03-14
14
netty如何玩转内存使用 netty如何玩转内存使用
Netty如何玩转内存使用1、减少对象本身大小 2、对分配内存进行预估 3、Zero-Copy 零复制 4、堆外内存 优点:1、破除对空间限制,减轻GC压力 2、避免复制 缺点: 1、创建速度稍慢 2、堆外内存受操作系统管理 5、内存池 为
2022-03-14
13
TCP粘包、半包 Netty全搞定 TCP粘包、半包 Netty全搞定
1、什么是粘包和半包? 粘包:一次接收全部消息 半包:分多次接收到多个不完整的消息 2、为什么TCP应用会出现粘包和半包现象 粘包的主要原因: 发送方每次写入数据 < 套接字缓冲区大小 接收方读取套接字缓冲区数据不及时 半包的主要
2022-03-13
13
netty三种IO的支持 netty三种IO的支持
什么是经典的三种I/O模式? 场景 模式 jdk支持 排队打饭 BIO(阻塞I/O) jdk1.4之前 点单、等待被叫模式 NIO(非阻塞I/O) JDK1.4 包厢 AIO(非阻塞异步I/O) JDK1.7 Nett
2022-03-13
1 / 2