美文网首页
Nginx多进程设计的优点

Nginx多进程设计的优点

作者: 吕艳凯 | 来源:发表于2019-11-27 18:02 被阅读0次

Nginx采用一个master管理进程、多个worker工作进程的设计方式,如图所示。

在图中,包括完全相同的worker进程、1个可选的cache manager进程以及1个可选的cache loader进程。

这种设计带来以下优点:

(1)利用多核系统的并发处理能力

       现代操作系统已经支持多核CPU架构,这使得多个进程可以占用不同的CPU核心来工作。如果只有一个进程在处理请求,则必然会造成CPU资源的浪费!如果多个进程间的地位不平等,则必然会有某一级同一地位的进程成为瓶颈,因此,Nginx中所有的worker工作进程都是完全平等的。这提高了网络性能、降低了请求的时延。

(2)负载均衡

       多个worker工作进程间通过进程间通信来实现负载均衡,也就是说,一个请求到来时更容易被分配到负载较轻的worker工作进程中处理。这将降低请求的时延,并在一定程度上提高网络性能。

(3)管理进程会负责监控工作进程的状态,并负责管理其行为

       管理进程不会占用多少系统资源,它只是用来启动、停止、监控或使用其他行为来控制工作进程。首先,这提高了系统的可靠性,当工作进程出现问题时,管理进程可以启动新的工作进程来避免系统性能的下降。其次,管理进程支持Nginx服务运行中的程序升级、配置项的修改等操作,这种设计使得动态可扩展性、动态定制性、动态可进化性较容易实现。

相关文章

网友评论

      本文标题:Nginx多进程设计的优点

      本文链接:https://www.haomeiwen.com/subject/jpcmwctx.html