Webserver(5.2)网页服务器框架

目录

网页服务器

接收、存储,处理来自客户端的HTTP请求,并对其请求做出HTTP响应。

Web服务器底层是基于tcp协议的,因为要保证数据安全。

服务器编程基本框架

模块:

IO处理单元:处理客户连接,读写网络数据

逻辑单元:业务进程或线程

网络存储单元:数据库、文件或缓存

请求队列:各单元之间的通信方式

两种高效的事件处理模式

需要处理三类事件:IO事件、信号及定时事件

reactor模式

同步IO模型实现reactor模式

主线程只监听文件描述符上是否有事件发生,有的话就立即将该事件通知工作线程(逻辑单元),将socket可读可写事件放入请求队列,交给工作线程处理。

proactor模式

异步IO模型实现proactor模式

同步IO模拟Proactor模式

主线程执行数据读写操作,读写完成之后,主线程向工作线程通知这一完成事件。

相关推荐
峰顶听歌的鲸鱼34 分钟前
Kubernetes管理
运维·笔记·云原生·容器·kubernetes·云计算
霖霖总总43 分钟前
[小技巧42]InnoDB 索引与 MVCC 的协同工作原理
运维·数据库·mysql
CRMEB系统商城1 小时前
CRMEB多商户系统(PHP)- 移动端二开之基本容器组件使用
运维·开发语言·小程序·php
小镇学者1 小时前
【python】python项目是如何部署到服务器上的
服务器·python·github
HIT_Weston1 小时前
103、【Ubuntu】【Hugo】搭建私人博客:搜索功能(四)
linux·运维·ubuntu
2501_945837431 小时前
事件驱动无服务器,Knative重塑原子化运算
服务器
yaoxin5211231 小时前
296. Java Stream API - 二元操作符与“单位元“
java·服务器·windows
视觉震撼3 小时前
逐步指南:为大模型构建自动化知识图谱
运维·自动化·知识图谱
yeflx3 小时前
OpenMVS源码编译
运维
有泽改之_4 小时前
ssh命令使用
linux·运维·ssh