9 月 13 日,2025 Inclusion・外滩大会「开源嘉年华」正在限量报名中! 了解详情
写点什么

Nginx 处理 HTTP 请求需要经过哪 11 个阶段? | 极客时间

  • 2019-05-15
  • 本文字数:1013 字

    阅读完需:约 3 分钟

Nginx 处理 HTTP 请求需要经过哪 11 个阶段? | 极客时间

Nginx 为什么要把 HTTP 请求的处理过程分为多个阶段呢?


Nginx 的模块化设计使得每一个 HTTP 模块可以仅专注于完成一个独立的、简单的功能,而一个请求的完整处理过程可以使由无数个 HTTP 模块共同合作完成。这种设计有非常好的简单性、可测试性、可扩展性,然而,当多个 HTTP 模块流水式地处理同一个请求时,单一的处理顺序是无法满足灵活性需求的,每一个正在处理请求的 HTTP 模块很难灵活、有效地指定下一个 HTTP 处理模块是哪一个。而且,不划分处理阶段也会让 HTTP 请求的完整处理流程难以管理,每一个 HTTP 模块也很难正确地将自己插入到完整流程的合适位置中。


因此,HTTP 框架依据常见的处理流程将处理阶段划分为 11 个阶段,其中每个处理阶段都可以由任意多个 HTTP 模块流水式地处理请求。


那么,我们来看一看“Nginx处理HTTP请求需要经过哪 11 个阶段?

此节课程的用户评价

课程介绍

Nginx 很火,因为它就像一个万能药,在任何存在性能需求的场合总能找见它的身影。它可以轻松在百万并发连接下实现高吞吐量的 Web 服务,同时诸多应用场景下的问题都可以通过种种 Nginx 模块得以解决。


技术人员掌握 Nginx,便掌握了应对高并发以及海量数据处理的利器。而且,在学习 Nginx 的过程中,还能学习到许多优秀的设计思想,进一步提升我们的编码能力和架构设计能力,从而大大拓展我们的职业道路。


陶辉在极客时间开设的这门课程《Nginx核心知识100讲》,备受好评。由于他有着多年 Nginx 的定制化应用经验,对 Nginx 的设计与特性有深刻认识,还是《深入理解 Nginx:模块开发与架构解析》一书的作者,跟着他学 Nginx,必定让你少走弯路。


他可以帮你把关于 Nginx 的零零散散的知识点串成一条线,再将网络、操作系统、磁盘等知识与 Nginx 相关知识组成一个知识网,从而在工作中灵活运用这些知识和技能,通过 Nginx 最大化地利用好服务器的性能,搭建出更稳定的服务。

你将获得

1、基础知识详解及核心架构剖析


2、搭建支持百万高并发的 Nginx 服务


3、从内核优化到源码解读的全方位拆解


4、OpenResty + Nginx 开发实战


总而言之,要成为 Nginx 高手,你必须彻底明确 Nginx 的能力模型,了解 Nginx 的工作原理,清楚怎样使用 Nginx 搭建出定制化的 Web 服务器或者微服务集群的负载均衡服务,并理解什么样的 API 服务适合用 Nginx 编写,同时清楚如何在 linux 操作系统上优化 Nginx,使 Nginx 可以轻松应付百万并发连接。

Nginx 核心知识图谱


内容选自极客时间Nginx核心知识100讲专栏


2019-05-15 15:057378

评论

发布
暂无评论
发现更多内容

为什么AI需要大大大大大模型?

白洞计划

在线HTML转JS/JSON工具

入门小站

工具

架构实战营模块7作业

Vic

架构实战营

【Flutter 专题】97 仿网易新闻标签选择器

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 7月日更

分层架构:一个经典却得不到优的难题

码猿外

架构 微服务

网络攻防学习笔记 Day62

穿过生命散发芬芳

网络攻防 7月日更

一文看懂 Context

Rayjun

Go 语言

Ubuntu 如何强制时间同步

HoneyMoose

架构实战营模块七作业

竹林七贤

全表遍历并处理数据有点慢?放开!我来!

林一

jpa Stram @QueryHints

为什么AI需要大大大大大模型?

脑极体

【LeetCode每日一题 Day 4】4. 寻找两个正序数组的中位数

编程熊

程序员 算法 LeetCode 面经 笔试

大专的我,闭关苦学56天,含泪拿下阿里offer,五轮面试,六个小时灵魂拷问

Java架构师迁哥

二分查找常见套路与分析

gevin

算法 二分查找

网络攻防学习笔记 Day63

穿过生命散发芬芳

网络攻防 7月日更

CVPR2021竞赛结果出炉,阿里淘系多媒体算法包揽3项国际冠军

阿里巴巴大淘宝技术

CVPR

云原生负载均衡和网关应用实践

火山引擎开发者社区

云原生 后端

新能源车的发展趋势

石云升

学习 新能源汽车 7月日更

将 FeignClient 的请求记录成 cURL 格式

哈德韦

微服务 前后端分离 log4j curl Spring boot Feign

2022秋春招/提前批面经分享总结(字节、腾讯、阿里)

学无止境的阿奔

腾讯 面试 阿里 字节 校招

从特斯拉召回事件,窥探OTA汽车进化真面目

脑极体

架构实战营模块一作业

Clarke

架构实战营

Python协程 & 异步编程(asyncio) 入门介绍

行者AI

#python

AQS介绍和原理分析(下)

追风少年

并发编程 AQS

08 | 指针系列(二):记住,指针变量也是变量(2)

Nydia

external-attacher源码分析(1)-main方法与启动参数分析

良凯尔

Kubernetes 源码分析 Ceph CSI Kubernetes Plugin

啥,Vue又出新单曲?

wzx

Vue 大前端

iOS 15隐私升级及注意事项

阿里巴巴大淘宝技术

ios WWDC21

花2个月备战字节,3轮面试拿下总包60W Offer!

Java架构师迁哥

利用 IComparable<T> 以及 IComparer<T> 定义顺序关系

喵叔

7月日更

Linux之which命令

入门小站

Linux

Nginx 处理 HTTP 请求需要经过哪 11 个阶段? | 极客时间_大前端_陶辉_InfoQ精选文章