问题聚焦:
核心章节。
服务器一般分为如下三个主要模块:I/O处理单元(四种I/O模型,两种高效事件处理模块),逻辑单元(两种高效并发模式,有效状态机)和存储单元(不讨论)。
服务器模型
C/S模型
结构:
特点:
逻辑简单。
工作流程:
I/O复用技术:select,同时监听多个客户请求。
优点:适合资源相对集中的场合。
缺点:当访问量过大,可能所有客户都将得到很慢的相应。
P2P模型
结构:两种结构
结构b比结构a增加了发现服务器,用于主机之间的互相发现,尽快找到自己需要的资源。
特点:
摒弃了服务器为中心的格局,让网络上所有主机处于对等的地位。
每台机器在消耗服务的同时也给别人提供服务
缺点:当用户之间传输的请求过多时,网络的负载将加重
服务器编程框架
基本框架:
模块说明:
|
模块
|
单个服务器程序
|

本文介绍了高性能服务器程序框架的设计,利用epoll实现事件驱动,主线程负责监听与调度,工作线程处理读写及请求。通过aio_read/aio_write进行异步IO操作,结合信号通知,确保高效并发处理。同时讨论了半同步/半异步和领导者/追随者模式的应用。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



