摘要: 更新已取消 从gitee重新clone到新的目录即可。估计是目录权限限制。 阅读全文
posted @ 2025-09-08 16:24 三驾马车 阅读(6) 评论(0) 推荐(0)
摘要: 1. ByteBuffer 是java.nio.Buffer.ByteBuffer; ByteBuf 是io.netty.buffer.ByteBuf. 2. ByteBuffer长度固定,无法动态扩展和收缩, 阅读全文
posted @ 2025-06-12 16:22 三驾马车 阅读(12) 评论(0) 推荐(0)
摘要: 在 Eclipse Modeling Framework (EMF) 或其他支持数据编组(Marshalling)的框架中,Marshalling.getProvidedMarshallerFactory("serial") 方法用于获取特定类型的 Marshaller(序列化器)工厂。其中 "se 阅读全文
posted @ 2025-05-29 15:35 三驾马车 阅读(21) 评论(0) 推荐(0)
摘要: 1. ProtobufVarint32FrameDecoder 的输出是 去除了 Varint32 长度头的纯 protobuf 消息体,确保: 消息完整性(无粘包/半包问题)。 直接适配 ProtobufDecoder 的输入要求。 2. ProtobufDecoder 用于处理 Protocol 阅读全文
posted @ 2025-05-21 09:17 三驾马车 阅读(39) 评论(1) 推荐(0)
摘要: Protocol Buffers(protobuf)中的 Varint(Variable-length integer) 是一种可变长度的整数编码格式,用于高效压缩小整数的存储空间。其核心规范如下: 1. 基本规则 目标:用尽可能少的字节表示整数(尤其适合小值)。 原理: 每个字节的最高位(MSB, 阅读全文
posted @ 2025-05-21 08:59 三驾马车 阅读(159) 评论(0) 推荐(0)
摘要: 在 Netty 中,ChannelPipeline 的处理器(ChannelHandler)的 添加顺序(addLast 的顺序)会直接影响数据的处理流程,尤其是在 入站(Inbound) 和 出站(Outbound) 事件的传播方向上。以下是关键点解析: 1. Pipeline 的处理顺序 Net 阅读全文
posted @ 2025-05-20 17:31 三驾马车 阅读(123) 评论(0) 推荐(0)
摘要: 在 Netty 的 ChannelInboundHandlerAdapter 中,channelRead 和 channelReadComplete 是两个重要的入站事件处理方法,它们有以下关键区别: 核心区别对比 特性channelReadchannelReadComplete 触发时机 每次读取 阅读全文
posted @ 2025-05-15 17:23 三驾马车 阅读(85) 评论(0) 推荐(0)
摘要: // 创建默认大小的堆缓冲区(初始256字节,最大Integer.MAX_VALUE)ByteBuf heapBuffer = Unpooled.buffer(); // 创建指定容量的堆缓冲区public static ByteBuf buffer(int initialCapacity); // 阅读全文
posted @ 2025-05-14 17:09 三驾马车 阅读(61) 评论(0) 推荐(0)
摘要: Netty 中的 ServerBootstrap 和 Bootstrap 是网络应用程序的启动类,它们的主要区别在于用途和功能: 1. 基本用途 类用途对应网络角色 Bootstrap 用于启动客户端应用程序 客户端(Client) ServerBootstrap 用于启动服务端应用程序 服务器(S 阅读全文
posted @ 2025-05-14 09:15 三驾马车 阅读(61) 评论(0) 推荐(0)
摘要: 在 Netty 中,Bootstrap 和 ServerBootstrap 是用于配置客户端和服务端网络应用的核心类,它们的 handler() 和 childHandler() 方法用于设置不同的处理器,主要区别如下: 1. 适用场景 方法适用对象作用目标 Channel 类型 handler() 阅读全文
posted @ 2025-05-14 09:11 三驾马车 阅读(56) 评论(0) 推荐(0)