A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

Web服务器总的来说提供服务的方式有三种:
    多进程方式
    多线程的方式
    异步方式
其中效率最高的是异步的方式,最稳定的是多进程方式,占用资源较少的是多线程的方式。
1.多进程
此种架构方式中,web服务器生成多个进程并行处理多个用户请求,进程可以按需或事先生成。有的web服务器应用程序为每个用户请求生成一个单独的进程来进行响应,不过,一旦并发请求数量达到成千上万时,多个同时运行的进程将会消耗大量的系统资源。(即每个进程只能响应一个请求或多个进程对应多个请求)
优点:
    最大的优势就在于稳定性,一个进程出错不会影响其它进程。如,服务器同时连接100个请求对就的是100个进程,其中一个进程出错,只会杀死一个进程,还有99个进程继续响应用户请求。
    每个进程响应一个请求
缺点:
    进程量大,进程切换次数过多,导致CPU资源使用效率低
    每个进程的地址空间是独立的,很多空间中重复的数据,所以内存使用效率低
    进程切换由于内核完成,占用CPU资源

2.多线程
在多线程方式中,每个线程来响应一下请求,由于线程之间共享进程的数据,所以线程的开销较小,性能就会提高。
优点:
    线程间共享进程数据
    每个线程响应一个请求
    线程切换不可避免(切换量级比较轻量)
    同一进程的线程可以共享进程的诸多资源,比如打开的文件
    对内存的需求较之进程有很大下降
    读可以共享,写不可以共享
缺点:
    线程快速切换时会带来线程抖动
    多线程会导致服务器不稳定

3.异步方式
    一个进程或线程响应多个请求,不需要任何额外开销的,性能最高,占用资源最少。但也有问题一但进程或线程出错就会导致整个服务器的宕机。

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马