欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

Nginx开发从入门到精通

程序员文章站 2022-05-09 13:58:02
...
访问连接:Nginx开发从入门到精通
上篇:nginx模块开发篇
    背景介绍
        nginx历史
        使用简介
        nginx特点介绍
    nginx平台初探(100%)
        初探nginx架构(100%)
        nginx基础概念(100%)
            connection
            request
        基本数据结构(99%)
            ngx_str_t(100%)
            ngx_pool_t(100%)
            ngx_array_t(100%)
            ngx_hash_t(100%)
            ngx_hash_wildcard_t(100%)
            ngx_hash_combined_t(100%)
            ngx_hash_keys_arrays_t(100%)
            ngx_chain_t(100%)
            ngx_buf_t(99%)
            ngx_list_t(100%)
            ngx_queue_t(100%)
        nginx的配置系统(100%)
            指令概述
            指令参数
            指令上下文
        nginx的模块化体系结构
        模块概述
            模块的分类
        nginx的请求处理
            请求的处理流程
    handler模块(100%)
        handler模块简介
        模块的基本结构
            模块配置结构
            模块配置指令
            模块上下文结构
            模块的定义
        handler模块的基本结构
        handler模块的挂载
            按处理阶段挂载
            按需挂载
        handler的编写步骤
        示例: hello handler 模块
        handler模块的编译和使用
            config文件的编写
            编译
            使用
        更多handler模块示例分析
            http access module
            http static module
            http log module
    过滤模块 (90%)
        过滤模块简介 (90%)
            执行时间和内容 (90%)
            执行顺序 (90%)
            模块编译 (90%)
        过滤模块的分析 (90%)
            相关结构体 (90%)
            响应头过滤函数 (90%)
            响应体过滤函数 (90%)
    upstream模块
        upstream模块 (100%)
            upstream模块接口
            memcached模块分析
            本节回顾
        负载均衡模块 (100%)
            配置
            指令
            钩子
            初始化配置
            初始化请求
            peer.get和peer.free回调函数
            本节回顾
    其他模块 (40%)
        core模块 (40%)
            Nginx的启动模块 (40%)
        event模块 (40%)
            event的类型和功能 (40%)
            accept锁 (40%)
            定时器 (40%)
        mail模块
            mail模块的实现
            mail模块的功能
    模块开发高级篇(30%)
        变量(80%)
            综述
            创建变量
            使用变量
        upstream
            使用subrequest访问upstream
            超越upstream
        使用lua模块
下篇:nginx原理解析篇
    高性能服务器设计
        c10k问题
        高性能服务器编写的关键原则
        事件驱动的核心引擎
        定时器管理
    nginx架构详解(50%)
        nginx的源码目录结构(100%)
        nginx的configure原理(100%)
            auto脚本
            模块编译顺序
        nginx的事件机制
            event框架及非阻塞模型
            定时器实现
            信号处理
            惊群问题
        nginx的进程机制
            master进程
            worker进程
            进程间通讯
    nginx基础设施
        内存池
            简介:
            结构:
            实现:
        共享内存
            slab算法
        buffer管理
            buffer重用机制
            buffer防拷贝机制
        chain管理
            chain重用机制
        aio原理
        锁实现
        基本数据结构
        时间缓存
        文件缓存
        log机制
    nginx的启动阶段 (30%)
        概述 (100%)
        共有流程 (100%)
            配置解析接口 (100%)
        配置解析
            通用过程 (100%)
            http的解析
            server的管理
            location的管理
        模块初始化
        热代码部署
            reload过程解析
            upgrade过程解析
    nginx的请求处理阶段 (90%)
        接收请求流程 (99%)
            http请求格式简介 (99%)
            请求头读取 (99%)
            请求体读取(100%)
        多阶段处理请求
            多阶段执行链
            POST_READ阶段
            SERVER_REWRITE阶段
            FIND_CONFIG阶段
            REWRITE阶段
            POST_REWRITE阶段
            PREACCESS阶段
            ACCESS阶段
            POST_ACCESS阶段
            TRY_FILES阶段
            CONTENT阶段
            LOG阶段
        Nginx filter
            header filter分析
            body filter分析
        subrequest原理解析 (99%)
        https请求处理解析
            nginx支持ssl简介
            ssl连接建立(ssl握手)
    nginx的upstream原理解析
        无缓冲的处理流程
        带缓冲的处理流程
        subrequest访问upstream的处理流程
        负载均衡算法
            round-robin算法
            基于ip的hash算法
        upstream缓存机制
        常用upstream模块分析
            proxy模块
            fastcgi模块
    nginx的script处理
        正则表达式
        变量
        复杂变量
        if的处理
附录A 编码风格 (100%)
    Nginx代码风格图示 (100%)
附录B 常用API
    B.1 字符串操作
    B.2 读取请求体
    B.3 操作请求头
    B.4 取参数
    B.5 URI处理
    B.6 buffer操作
    B.7 变量操作
    B.8 日志输出
    B.9 配置解析接口
    B.10 文件操作
    B.11 锁操作
附录C 模块编译,调试与测试
    C.1 编译与安装
        环境要求
        下载
        Nginx在Windows环境下安装
        Nginx在Linux环境下安装
        测试
        Nginx在Windows环境下查看nginx进程
        Nginx在Linux环境下查看nginx进程
    C.2 调试日志
        一,开启调试日志:
        二,日志级别分析:
        三,日志格式设置:
        四,调试日志的几个注意点:
    C.3 使用GDB调试
    C.4 功能测试
    C.5 性能/压力测试
    C.6 常见缺陷分析
').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i ').text(i)); }; $numbering.fadeIn(1700); }); });

以上就介绍了Nginx开发从入门到精通,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。