1、进程池
nginx在启动的时候会创建有固定数量(此数量在配置文件可配置)的worker即进程池,在之后的运行过程中不会在fork新的worker,并且一一绑定分配好的cpu。(解决了频繁创建和切换进程的成本)
2、多阶段
nginx把整个 Web 服务器分解成了多个“功能模块”,可以在配置文件里任意拼接搭建,从而实现了高度的灵活性和扩展性。这里可以理解为设计模式里的职责链模式,请求进入到worker之后,各个阶段(一共有11个阶段,有兴趣的可以去深入了解哈)有专门的车间来负责。实现了nginx高度的灵活性和扩展性。
3、epoll多路复用
nginx 实现了和http2.0的多路复用一样的模式,把多个请求打包到一个worker里去执行,如果某个请求有堵塞情况,下游资源不会等待其阻塞完毕而是处理其他可执行的请求。
标签:请求,配置文件,可用,实现,worker,扩展性,nginx,多路复用 From: https://www.cnblogs.com/x-p-j-a/p/18075224