在实际的应用中,要求一个服务器能同时处理大量的客户请求,所有这些客户将访问绑
定在某一个特定套接字地址上的服务器。因此,服务器必须满足并发的需求。如果不采用并
发技术,当服务器处理一个客户请求时,会拒绝其他客户端请求,造成其他客户要不断的请
求并长期等待。
在Linux(Unix)系统中并发服务器有三种设计方式:
(1)多进程
进程是执行中的计算机程序,可以认为是一个程序的一次运行。它是一个动态的实体,
是独立的任务。每个单独的进程运行在自己的虚拟地址空间中,并且它只能通过安全的内核
管理机制和其它进程交互。若是一个进程崩溃不会引起其它进程崩溃。
在Linux(Unix)系统中,多个进程可以同时执行相同的代码,从而支持并发。
对于单个CPU 系统而言,CPU 一次只能执行一个进程,但操作系统可通过分时处理,
每个进程在每个时间段中执行,因此对于用户而言,这些进程在同时执行。
(2)多线程
线程与进程类似,也支持并发执行。与进程不同的一点,在同一进程中所有线程共享
相同的全程变量以及系统分配给进程的资源。因此,线程占用较少的系统资源,并且线程之
间切换更快。
并发服务器:多路复用I/O
最新推荐文章于 2022-09-10 15:39:03 发布