随笔分类 - Linux网络
基础内容,常看常新
摘要:内存池是什么? 内存池是一种提前申请好一块大内存,再从中按需划分固定/可变大小的内存块进行复用的技术。 内存的申请和释放操作不再频繁调用 malloc/free 或 new/delete,而是从池中“取”或“还”。 使用内存池的原因: 减少系统调用开销,提高性能; 系统的malloc/free需要陷
阅读全文
摘要:常见的池式结构:线程池、连接池、内存池、对象池、协程池、线程池 常见的“池式结构” 池类型 描述 应用场景 线程池(Thread Pool) 复用固定数量的线程来处理大量任务 并发服务器、任务调度系统 连接池(Connection Pool) 复用数据库连接、HTTP连接等资源 Web服务访问数据库
阅读全文
摘要:io_uring是什么 io_uring是2019年,Linux内核5.1引入的异步io接口,通过环形buffer将用户态和内核态连接起来,实现低时延、低开销、异步、高吞吐的IO接口。 Linux传统的io机制: 最常用的epoll只能检测IO就绪,读写是阻塞的系统调用(recv、write、s
阅读全文
摘要:在网络Linux网络编程中,会使用到的API有如下的几个: Server侧: socket、bind、listen、accept、recv、send、close、connect(可选)。 client侧: socket、bind、connect、send、recv、close。 socket函数 调
阅读全文
摘要:在Linux环境下的基本网络编程步骤: 创建socket 绑定结构体 监听连接 建立连接 进行IO 关闭连接 Linux实现网络编程的几个API 创建socket //创建socket int sockfd = socket(AF_INET, SOCK_STREAM, 0); //函数原型 //in
阅读全文

浙公网安备 33010602011771号