时间:2021-07-01 10:21:17 帮助过:16人阅读
上篇: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 <= lines; i++) {
$numbering.append($('').text(i));
};
$numbering.fadeIn(1700);
});
});
以上就介绍了Nginx开发从入门到精通,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。