Nginx 是一个高性能的 Web 服务器,能够同时处理大量的并发请求。它结合多进程机制和异步机制 ,异步机制使用的是异步非阻塞方式 。
下面为大家介绍一下 Nginx 的多线程机制和异步非阻塞机制 。
1、多进程机制
服务器每当收到一个客户端时,就有 服务器主进程 ( master process )生成一个 子进程( worker process )出来和客户端建立连接进行交互,直到连接断开,该子进程就结束了。
使用进程的好处是各个进程之间相互独立,不需要加锁,减少了使用锁对性能造成的影响,同时降低了编程的复杂度和开发成本。
其次,采用独立的进程,可以让进程互相之间不会影响 ,如果一个进程发生异常退出时,其它进程正常工作, master 进程则很快启动新的 worker 进程,确保服务不会中断,从而将风险降到最低。
缺点:
操作系统生成一个子进程需要进行 内存复制等操作,在资源和时间上会产生一定的开销。当有大量请求时,会导致系统性能下降 。
2、异步非阻塞机制
每个工作进程 使用 异步非阻塞方式 ,可以处理多个客户端请求 。
当某个 工作进程 接收到客户端的请求以后,调用 IO 进行处理,如果不能立即得到结果,就去 处理其他请求 (即为 非阻塞 );而 客户端 在此期间也 无需等待响应 ,可以去处理其他事情(即为 异步 )。
当 IO 返回时,就会通知此 工作进程 ;该进程得到通知,暂时 挂起 当前处理的事务去 响应客户端请求 。
以上就是Nginx是如何处理HTTP请求的的详细内容,更多请关注趣乐分享其它相关文章!
文章来源于互联网: Nginx是如何处理HTTP请求的
Adrese gelen istanbul Esenyurt hurdacı istanbul firması olarak hizmet veriyoruz..
En yakın hurdacı firması mı arıyorusunuz? Buraya yakın istanbul hurdacı firmalar arasındayız. İstanbul hurdacı firmasıyız. Hemen şimdi arayın.
Esenyurt hurdacı firmalar içinde lideriz. En yakın istanbul Esenyurt hurdacı telefonu olan numaramızdan ulaşabilirsiniz..