linux高性能服务器读书笔记之服务器模型
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,1.模型一:C/S(经典的)起因:TCP/IP协议是没有客户和服务端的区别。但是资源(视频,新闻,软件)都是被数据提供者所垄断逻辑:服务器启动后,首先创建一个或多个监听socket,并且调用bind函
千家信息网最后更新 2026年11月02日linux高性能服务器读书笔记之服务器模型
1.模型一:C/S(经典的)起因:TCP/IP协议是没有客户和服务端的区别。但是资源(视频,新闻,软件)都是被数据提供者所垄断逻辑:服务器启动后,首先创建一个或多个监听socket,并且调用bind函数将其绑定到需要(自定义)的端口,然后调用listen函数等待客户连接特点:客户连接是随机事件,需要某种I/O模型来监听连接。例子:服务器I/O复用技术之一的select系统调用(当监听接收到连接 ,服务器用accept来接收,并且分配一个逻辑单元为它服务,(fork系统产生逻辑单元,逻辑单元处理好一切返回给客户端,逻辑单元可以是新创建的子进程,子线程或其他)))2.接下来就是宅男熟悉的P2P模型
优势:就是去掉通信的中心
特点;就是每台机器在消耗服务的时候也会给别人提供服务
例子:迅雷,云计算机群
问题:主机相互之间很难发现(发现服务器来解决这个问题)
但是本质还是CS,只是一个变相的扩展
I/O处理单元--------》逻辑单元---------》网络存储单元 中间都是由请求队列(通信方式,一般是永久的tCP连接)2.1I/O处理单元:管理客户连接的模块,等待并且接受新的连接,接受客户的数据,将服务器的相应的数据返回客户端。数据的收发不一定在这里,也可能在逻辑单元,(取决于事件处理模式)2.2逻辑单元:分析并且处理数据,然后将结果传递给I/O处理单元或者直接发送给客户端(对于机器群来说,一个逻辑单元也许就是一台逻辑服务器)2.3.网络储存:可以是数据库,缓存和文件,或者一台服务器(有些是不需要的,如ssh,telnet)2.4.请求队列:各个单元之间通讯方式的抽象两个方面:I/O处理单元通知逻辑单元的方式,逻辑单元访问存储单元的机制这里就会涉及到池的概念,这个TCP理解一般是事先建立好的永久高效的TCP连接3.I/O模型
3.1阻塞和非阻塞可以用于所有的文件描述符,不仅仅是socket,
3.2阻塞是可能是无法立即完成而被操作系统挂起,知道等待完成事件发生。
3.3非阻塞是系统的调用总是立即返回。,所以如果完成世家没有发生,就会返回和错误一样的标记。(errno可以区分)
要求:我们需要在完成世家发生的情况下,操作非阻塞,才能实现高效率。
例子:I/O复用(最常用的通知机制,还有SIGIO信号)
含义:有个函数叫I/O复用函数,他可以向内核注册一组事件,内核可以将已经完成的事件通知给应用程序。
例子:I/O复用函数:select,poll,epoll_wait
原理:本身每个函数都是阻塞的,但是他们都具有监听多个I/O事件 的能力
备注:SIGIO的信号处理以后再说
备注2:上述的阻塞I/O,I/O复用和信号驱动I/O都是同步I/O模型。
原理:I/O读写操作都是在I/O事件发生之后
异步I/O:(POSIX规范)用户可以直接对I/O进行读写操作,这些操作会告诉用户读写缓冲区的位置,以及操作完成后内核通知应用程序的方式
二者核心区别:同步是用户自己处理I/O操作,异步I.O是内核执行I/O操作。
区别2:同步向应用程序通知二是I/O就绪事件,异步是I/O完成事件。
linux下,aio.h 提供了对异步I/O的支持
单元
逻辑
服务
事件
处理
客户
阻塞
服务器
函数
数据
模型
复用
例子
内核
就是
方式
系统
监听
信号
客户端
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技工作委员会主任
互联网巨头反垄断金融科技
互联网下的科技发展
汇久创客互联网科技
互联网科技论坛
科技大学互联网专业好不好
银川新华互联网科技职业技术培训学校图片
重庆互联网医院沙龙医盟信息科技
和信科技工业互联网
济南有互联网科技公司吗
中科明德北京互联网科技
锡山区互联网智能科技产品供应
银行科技岗属于互联网吗
互联网营销推广黑科技
互联网科技快讯热点
山东大美朱楼互联网科技有限公司
互联网时代高科技布局
安徽零酒互联网科技有限公司
互联网科技对化妆品行业
互联网金融金融科技
互联网科技股
互联网科技卖菜
善班互联网科技
碳银互联网科技
互联网金融科技创新
互联网金融科技委员会
镁科技互联网资讯平台
世界互联网科技公司市值排名
互联网科技的全部知识
朱啸虎曾投资哪些互联网科技企业