一个完善的底层通信框架需要具备哪些功能? 网络协议 编解码支持 网络通信都是字节流,因此需要提供编解码的支持 各种通信协议支持 每个团队涉及的通信协议可能不同,因此框架需要尽可能的支持常见的协议 粘包和拆包问题 支持分隔符切分,固定长度等 连接管理 连接资源是有限的,所以要保持合理的连接数,通过心跳机制、检查空闲连接功能等来管理连接 IO模型 NIO模型,实现IO多路复用 零拷贝 发送文件时使用零拷贝减少拷贝次数,提升性能 内存管理 线程模型 Reactor模型,accept 线程与 reactor 线程(I/O线…