28、I、O多路复用进阶:子线程使用poll处理连接I、O事件

你好,我是盛延敏,这里是网络编程实战第28讲,欢迎回来。 在前面的第27讲中,我们引入了reactor反应堆模式,并且让reactor反应堆同时分发Acceptor上的连接建立事件和已建立连接的I/O事件。 我们仔细想想这种模式,在发起连接...

网络编程实战

27、I、O多路复用遇上线程:使用poll单线程处理所有I、O事件

你好,我是盛延敏,这里是网络编程实战第27讲,欢迎回来。 我在前面两讲里,分别使用了fork进程和pthread线程来处理多并发,这两种技术使用简单,但是性能却会随着并发数的上涨而快速下降,并不能满足极端高并发的需求。就像第24讲中讲到的一样,这个时...

网络编程实战

26、使用阻塞I、O和线程模型:换一种轻量的方式

你好,我是盛延敏,这里是网络编程实战第26讲,欢迎回来。 在前面一讲中,我们使用了进程模型来处理用户连接请求,进程切换上下文的代价是比较高的,幸运的是,有一种轻量级的模型可以处理多用户连接请求,这就是线程模型。这一讲里,我们就来了解一下线程模型。 线...

网络编程实战

25、使用阻塞I、O和进程模型:最传统的方式

你好,我是盛延敏,这里是网络编程实战第25讲,欢迎回来。 上一讲中,我们讲到了C10K问题,并引入了解决C10K问题的各种解法。其中,最简单也是最有效的一种解决方法就是为每个连接创建一个独立的进程去服务。那么,到底如何为每个连接客户创建一个进程来服务...

网络编程实战

24、C10K问题:高并发模型设计

你好,我是盛延敏,这里是网络编程实战第24讲,欢迎回来。 在性能篇的前4讲里,我们陆续讲解了select、poll、epoll等几种I/O多路复用技术,以及非阻塞I/O模型,为高性能网络编程提供了必要的知识储备。这一讲里,我们了解...

网络编程实战

23、Linux利器:epoll的前世今生

你好,我是盛延敏,这里是网络编程实战第23讲,欢迎回来。 性能篇的前三讲,非阻塞I/O加上I/O多路复用,已经渐渐帮助我们在高性能网络编程这个领域搭建了初步的基石。但是,离最终的目标还差那么一点,如果说I/O多路复用帮我...

网络编程实战
13233343536673