当前位置: 首页 > news >正文

TCP服务端并发模型

单循环服务器:服务端同一时间只能处理一个客户端的任务

多循环服务器:服务端同一时间处理多个客户端的任务

TCP服务端并发模型:

多进程

进程资源开销大;安全性高

多线程

线程相对与进程资源开销小,相同资源环境下,并发量比进程大。

3.线程池

为了解决多线程或多进程模型,在服务器运行过程中,频繁创建和销毁线程(进程)带来的时间消耗问题。

基于生产者和消费者编程模型,以及任务队列等,实现的一套多线程框架。

4.IO多路复用

I-->O:fd

对多个文件描述符的读写可以复用个进程。

在不创建新的进程和线程的前提下,使用一个进程实现对多个文件读写的同时监测。

fgets(stdin);

recv(connfd);

1select实现io多路复用:

(1)创建文件描述符集合 fd_set

(2)添加关注的文件描述符到集合  FD_SET

(3)使用select传递集合表给内核,内核开始检测事件select()

(4)当内核监测到事件时,应用层select将解除阻塞,并获得相关的事件结果

(5)根据select返回的结果做不同的情况处理

void FDCLR(int fd,fd set*set);

int FD_ISSET(int fd,fd_set *set);

void FD_SET(int fd,fd_set *set);

void FD_ZERO(fd_set *set)

http://www.dtcms.com/a/352744.html

相关文章:

  • 第5章 Excel公式与函数应用指南(4):日期和时间函数
  • Paimon——官网阅读:主键表
  • 计算神经科学数学建模编程深度前沿方向研究(下)
  • 【C++】类型系统:内置类型与自定义类型的对比
  • super(msg)层层上抛
  • 数据结构青铜到王者第七话---队列(Queue)
  • 基于Spring Boot的考研辅导知识共享平台-项目分享
  • Node.js 多版本管理工具 nvm 的安装与使用教程(含镜像加速与常见坑)
  • 计算机组成原理实验报告
  • Kafka架构以及组件讲解
  • 【Kafka】重点概念和架构总结
  • Unity 串口通信
  • 解开 Ansible 任务复用谜题:过滤器用法、Include/Import 本质差异与任务文件价值详解
  • Writer-你的私人内容创作助手
  • TCP并发服务器构建
  • TensorFlow 深度学习 | Layer 基础知识介绍
  • 浅谈Elasticsearch数据写入流程的refresh和flush操作
  • 智能一卡通系统通过集成身份识别、权限管理、数据联动等技术,实现多场景一体化管理。以下是多奥基于最新技术趋势和应用案例的系统解析
  • screen命令
  • AI一周事件(2025年8月20日-8月26日)
  • 74hc4094芯片点亮LED闪烁问题的解决
  • JS(面试)
  • 深度学习——激活函数
  • 碳化硅衬底 TTV 厚度不均匀性测量的特殊采样策略
  • Redis哨兵机制:高可用架构的守护神!⚔️ 主从秒级切换实战指南
  • 力扣LCP 46. 志愿者调配随笔
  • 基于Spring Boot+Vue的生活用品购物平台/在线购物系统/生活用户在线销售系统/基于javaweb的在线商城系统
  • 微生产力革命:AI解决生活小任务分享会
  • AI 解决生活小事 2——用 AI 做一回新闻播客
  • 解决mac brew4.0安装速度慢的问题