摘要: 目录高性能网络框架汇总引言网络原理高性能网络框架性能测试相关面试问题 高性能网络框架汇总 简介:从网络原理出发,引出四种Linux平台常用框架及以及windows异步并发架构。 引言 ​ 计算机网络在应用程序架构中扮演十分核心的功能,通过网络计算机与计算机之间才得以互相通信、数据交互,进而协作。在当 阅读全文
posted @ 2025-07-06 20:13 +_+0526 阅读(74) 评论(0) 推荐(1)
摘要: IOCP作为Windows平台的高性能异步IO框架,通过完成端口统一管理所有IO操作,采用Proactor模式将数据读写完全托管给内核,结合预投递请求、工作线程池和结构化上下文管理,在百万级QPS测试中展现出卓越的并发处理能力。 阅读全文
posted @ 2025-07-03 14:41 +_+0526 阅读(32) 评论(0) 推荐(0)
摘要: io_ring 作为 Linux 新一代异步 I/O 框架,通过双环形队列(SQ/CQ)和内存映射机制实现了真正的零拷贝异步 IO。其核心价值在于将 I/O 操作从传统的事件通知模式(如 epoll)升级为内核执行引擎模式:用户通过填充 SQE 批量提交请求后立即返回,内核异步执行实际 I/O 并将结果写入 CQ,用户仅在需要时通过 io_uring_wait_cqe 获取结果。相较于传统阻塞 I/O,该设计通过批处理摊销系统调用开销、内核轮询实现零系统调用、注册资源消除数据拷贝。 阅读全文
posted @ 2025-07-01 18:21 +_+0526 阅读(112) 评论(0) 推荐(0)
摘要: 目录用户态协议栈:基于dpdk的自定义网络协议栈引言DPDK安装与配置虚拟机环境配置DPDK编译安装DPDK原理与架构简单UDP/TCP的echo应用UDP收发数据TCP的三次握手并发TCP网络协议栈问题与解决方案问题一:RX队列中如何做到无CPU参与的零拷贝?问题二:简单利用DPDK实现一个发包工 阅读全文
posted @ 2025-06-19 19:57 +_+0526 阅读(291) 评论(0) 推荐(0)
摘要: TCP简易发包工具 简介:按照命令行参数,向指定服务器发送一系列数据包,根据数据收发的耗时计算出服务器的qps。 架构及设计 ​ 在主函数入口输入参数,按照参数创建连接向服务器发送数据,根据总耗时计算qps。按照需求指定命令行参数:s:p:t:c:n,分别代表服务器ip,服务器端口、创建线程、创建的 阅读全文
posted @ 2025-06-19 19:51 +_+0526 阅读(62) 评论(0) 推荐(0)
摘要: 本文深入探讨了协程的原理及其在网络IO中的应用,通过对比串行与异步编程的局限性引出协程的价值——以同步编码实现异步并发,详细分析了三种协程实现方案(setjmp/longjmp、ucontext、自定义汇编),并基于仿NtyCo框架构建了完整的协程调度系统,结合Hook机制实现了非阻塞网络API的协程化改造,最终通过十类场景阐释了异步操作的核心优势。 阅读全文
posted @ 2025-06-14 11:16 +_+0526 阅读(34) 评论(0) 推荐(0)
摘要: 目录从TCP到可靠传输UDP引言原理及架构一、TCP的可靠传输机制二、KCP协议简介三、KCP源码解析及应用总结 从TCP到可靠传输UDP 简介:在要求实时性的应用程序中报文结构更简单的UDP更受青睐。本文介绍了TCP可靠传输的技术细节,以及KCP协议的原理及简单应用。 引言 ​ TCP在协议结构中 阅读全文
posted @ 2025-05-30 16:02 +_+0526 阅读(277) 评论(0) 推荐(0)
摘要: 本文详细介绍了Linux操作系统中,网络通信的常用API。介绍了TCP协议中创建连接、传输数据、关闭连接所调用的POSIX API,以及相应的文件描述符与TCP控制块的参数设置。在最后,针对Linux操作系统收发数据导致的用户态内核态频繁切换问题提出了部分解决方案。 阅读全文
posted @ 2025-05-23 18:20 +_+0526 阅读(349) 评论(0) 推荐(0)
摘要: 本文基于Reactor事件驱动模型实现了一个高性能服务器,支持百万级并发连接、WebServer和WebSocket应用。通过多端口监听和系统参数调优,成功突破单机百万并发限制。在WebServer实现中采用状态机机制处理HTTP请求/响应流程,支持文件传输;WebSocket通过握手升级和帧数据解析实现全双工通信。测试表明系统能稳定处理高并发请求,展示了Reactor模型在I/O密集型场景下的高效性,为构建高性能网络服务提供了实践参考。关键技术包括:epoll事件管理、连接跟踪表优化、HTTP协议栈实现及WebSocket协议转换等。 阅读全文
posted @ 2025-05-21 15:19 +_+0526 阅读(49) 评论(0) 推荐(0)
摘要: 本文介绍了三种IO多路复用技术(select、poll、epoll)和基于epoll的Reactor事件驱动模型,用于实现高并发服务器。文章详细分析了各技术的实现原理、代码示例和适用场景。 阅读全文
posted @ 2025-05-15 20:39 +_+0526 阅读(164) 评论(0) 推荐(0)