
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
本文介绍了一个基于Reactor模式的WebSocket服务器实现,主要包含三个核心模块:reactor.c负责事件驱动和网络I/O处理,webserver.c处理HTTP协议,websocket.c实现WebSocket协议。服务器使用epoll进行多路复用,支持同时监听多个端口,通过回调函数处理连接事件。WebSocket实现分为握手阶段(基于HTTP协议升级)和数据传输阶段(二进制帧格式),

本文实现了一个基于epoll的单线程Reactor模型网络服务器。Reactor模式通过事件驱动机制将网络IO与业务逻辑解耦,核心组件包括:事件监听(epoll)、回调函数(accept_cb/recv_cb/send_cb)和连接管理结构(conn)。系统采用单事件循环架构,主线程通过epoll_wait监听所有socket事件,触发对应回调处理。相比传统多线程模型,该设计避免了线程切换开销,通

本文实现了一个基于epoll的单线程Reactor模型网络服务器。Reactor模式通过事件驱动机制将网络IO与业务逻辑解耦,核心组件包括:事件监听(epoll)、回调函数(accept_cb/recv_cb/send_cb)和连接管理结构(conn)。系统采用单事件循环架构,主线程通过epoll_wait监听所有socket事件,触发对应回调处理。相比传统多线程模型,该设计避免了线程切换开销,通

本文总结了网络IO与IO多路复用的实现方法,重点对比了select、poll和epoll三种多路复用技术。首先介绍了基础的TCP服务器搭建流程:创建socket→绑定地址→监听连接。然后分析了单线程阻塞IO的局限性,以及多线程模型在高并发时的资源消耗问题。接着详细讲解了select的实现方式,通过维护fd_set集合和maxfd来监控多个连接,但存在遍历开销大的缺点。poll方法改用pollfd数








