本文共 820 字,大约阅读时间需要 2 分钟。
摘自:
nginx是一款高性能的Web服务器,由于它优秀的性能、成熟的社区、完善的文档,受到广大开发者的喜爱和支持。它的高性能与其架构是分不开的,nginx的框架如下图所示:
nginx架构图-来源于网上
Nginx是经典的多进程模型,它启动以后以守护进程的方式在后台运行,后台进程包含一个master进程,和多个worker进程。其中master进程相当于控制进程,有以下作用:
其中 master 进程支持的信号处理如下:
单个worker进程也支持信号处理,包括:
worker进程基于异步非阻塞的模式处理每个请求,这种非阻塞的模式,大大提高了worker进程处理请求的速度。为了尽可能的提高性能,nginx对每个worker进程设置了CPU的亲和性,尽量把worker进程绑定在指定的CPU上执行,以减少上下文切换带来的开销。由于这种绑核的模式,一般推荐worker进程的数目,为CPU的核数。
nginx使用了master<->worker这种多进程的模型,有哪些好处呢?
转载地址:http://awoni.baihongyu.com/