写点什么

Nginx 工作原理

  • 2023-10-30
    北京
  • 本文字数:445 字

    阅读完需:约 1 分钟

本文分享自天翼云开发者社区《Nginx工作原理》,作者:王****秀

 

Nginx 的进程模型


Nginx 服务器由一个 Master 进程和多个 Worker 进程组成:


Master 进程:管理 Worker 进程。对外接口:接收外部的操作(信号);对内转发:根据外部操作的不同,通过信号管理 Worker;监听:监控 Worker 进程的运行状态,Worker 进程异常终止后,自动重启 Worker 进程。


Worker 进程:所有 Worker 进程都是平等的,用于处理网络请求。进程数量:在 nginx.conf 中配置,一般设置为核心数,充分利用 CPU 资源,同时,避免进程数量过多,避免进程竞争 CPU 资源,增加上下文切换的损耗。


HTTP 连接建立和请求处理过程

Nginx 启动时,Master 进程加载配置文件。

Master 进程,初始化监听的 Socket。

Master 进程,Fork 出多个 Worker 进程。

Worker 进程,竞争新的连接,获胜方通过三次握手,建立 Socket 连接,并处理请求。


Nginx 高性能、高并发

Nginx 采用多进程+异步非阻塞方式(IO 多路复用 Epoll)。

请求的完整过程:建立连接→读取请求→解析请求→处理请求→响应请求。

请求的完整过程对应到底层就是:读写 Socket 事件。

用户头像

还未添加个人签名 2022-02-22 加入

天翼云是中国电信倾力打造的云服务品牌,致力于成为领先的云计算服务提供商。提供云主机、CDN、云电脑、大数据及AI等全线产品和场景化解决方案。

评论

发布
暂无评论
Nginx工作原理_nginx_天翼云开发者社区_InfoQ写作社区