数据库
MySQL
ORACLE
占位哈哈
占位哈哈
占位哈哈
占位哈哈
占位哈哈
占位哈哈
占位哈哈
占位哈哈
Linux运维
中间件
shell脚本
占位哈哈
占位哈哈
占位哈哈
占位哈哈
占位哈哈
占位哈哈
占位哈哈
首页 动态 发帖 版块 我的
 退出
游客  
等级:
金豆:
经验:
首页  /  运维工程师面试题  /  正文

简述Nginx对于HTTP请求采用哪两种机制进行处理?

  236 
 0
 0

Nginx 是一个高性能的 Web 服务器,能够同时处理大量的并发请求。它结合多进程机制和异步非阻塞机制 。

多进程机制:服务器每当收到一个客户端请求时,就有服务器主进程 master process)生成一个子进程(worker process)和客户端建立连接进行交互,直到连接断开,该子进程就结束了。

使用进程的好处是各个进程之间相互独立,不需要加锁,减少了使用锁对性能造成影响。

其次,采用独立的进程,可以让进程互相之间不会影响 ,如果一个进程发生异常退出时,其它进程正常工作,master进程则很快启动新的worker进程,确保服务不会中断,从而将风险降到最低。

缺点是操作系统生成一个子进程需要进行 内存复制等操作,在资源和时间上会产生一定的开销。当有大量请求时,会导致系统性能下降

异步非阻塞机制:每个工作进程使用异步非阻塞方式,可以处理多个客户端请求

当某个工作进程接收到客户端请求以后,调用 IO 进行处理,如果不能立即得到结果,就去处理其他请求(即为非阻塞 )。而客户端在此期间也无需等待响应,可以进行其他任务(即为 异步 )。

IO返回时,就会通知此工作进程。该进程得到通知,暂时挂起当前处理的事务去响应客户端请求 。


标签:
作者签名: 只有努力,才会有收获   楼主  2022-07-16 15:35:48
回复列表
合作伙伴:
Powered by 运维术 8.4.13
© 2017-2024 模板 by 黑衣人
您的IP: 3.147.60.62 , 2024-11-21 23:56:59
Powered by 运维术 8.4.13
© 2017-2024 模板 by 黑衣人
(0) 分享
分享
取消
我的客服