24、C10K问题:高并发模型设计你好,我是盛延敏,这里是网络编程实战第24讲,欢迎回来。 在性能篇的前4讲里,我们陆续讲解了select、poll、epoll等几种I/O多路复用技术,以及非阻塞I/O模型,为高性能网络编程提供了必要的知识储备。这一讲里,我们了解...2026-03-01网络编程实战
25、使用阻塞I、O和进程模型:最传统的方式你好,我是盛延敏,这里是网络编程实战第25讲,欢迎回来。 上一讲中,我们讲到了C10K问题,并引入了解决C10K问题的各种解法。其中,最简单也是最有效的一种解决方法就是为每个连接创建一个独立的进程去服务。那么,到底如何为每个连接客户创建一个进程来服务...2026-03-01网络编程实战
26、使用阻塞I、O和线程模型:换一种轻量的方式你好,我是盛延敏,这里是网络编程实战第26讲,欢迎回来。 在前面一讲中,我们使用了进程模型来处理用户连接请求,进程切换上下文的代价是比较高的,幸运的是,有一种轻量级的模型可以处理多用户连接请求,这就是线程模型。这一讲里,我们就来了解一下线程模型。 线...2026-03-01网络编程实战
27、I、O多路复用遇上线程:使用poll单线程处理所有I、O事件你好,我是盛延敏,这里是网络编程实战第27讲,欢迎回来。 我在前面两讲里,分别使用了fork进程和pthread线程来处理多并发,这两种技术使用简单,但是性能却会随着并发数的上涨而快速下降,并不能满足极端高并发的需求。就像第24讲中讲到的一样,这个时...2026-03-01网络编程实战
28、I、O多路复用进阶:子线程使用poll处理连接I、O事件你好,我是盛延敏,这里是网络编程实战第28讲,欢迎回来。 在前面的第27讲中,我们引入了reactor反应堆模式,并且让reactor反应堆同时分发Acceptor上的连接建立事件和已建立连接的I/O事件。 我们仔细想想这种模式,在发起连接...2026-03-01网络编程实战
29、渐入佳境:使用epoll和多线程模型你好,我是盛延敏,这里是网络编程实战第29讲,欢迎回来。 在前面的第27讲和第28讲中,我介绍了基于poll事件分发的reactor反应堆模式,以及主从反应堆模式。我们知道,和poll相比,Linux提供的epoll是一种更为高效的事件分发机制。在这...2026-03-01网络编程实战