Nginx学习笔记
HappyMrSpring
这个作者很懒,什么都没留下…
展开
-
第1章 Nginx初探
说明:该分类的文章为《Nginx高性能web服务器详解》的学习笔记。后续文件不再单独说明。 Nginx:开源,轻量级。 可以在http://uptime.netcraft.com网站上查询Nginx的市场份额。 常见服务器产品介绍: Apache服务器: 优点: 开源。 跨平台。 ...原创 2018-11-19 18:10:27 · 144 阅读 · 0 评论 -
十四、Nginx的内存管理
内存池的逻辑结构: 链表1:多个分配模块,通过ngx_pool_data_t结构中的next成员,构成链表,形成内存池。 链表2:ngx_pool_large_t结构中的next成员,形成大数据内存块分配的链表。挂接在第一个分配模块上。 链表3:ngx_pool_cleanup_t结构中的next成员,形成内存回收链表。同样挂接第一个...原创 2018-12-03 16:32:58 · 234 阅读 · 0 评论 -
十一、Nginx基本数据结构
Nginx命令结构 的惯例:struct定义结构时,以-s作为后缀;typedef定义的别名,以-t作为后缀。 ngx_module_s结构: 作用: 每个模块对应一个该结构体变量。 该结构描述了模块的基本属性。 组织: objs/ngx_module.c文件中的ngx_modules结构数组中,包含...原创 2018-12-03 16:32:31 · 235 阅读 · 0 评论 -
十、Nginx源码结构
本章内容: Nginx服务器源码目录结构。 从源码结构看Nginx的模块化结构。 疑问点: misc/ngx_cpp_test_module.cpp:测试程序中引用的头文件是否与c++兼容。 extern "C"的作用? 参考:https://blog.csdn.net/liufuchun111/article...原创 2018-12-03 16:32:08 · 146 阅读 · 0 评论 -
三、Nginx服务器架构初探(3.3 设计架构概览)
Nginx服务器架构 主进程:Nginx配置文件解析、数据结构初始化、模块配置和注册、信号处理、网络监听生成、工作进程生成和管理等。 工作进程:进程初始化、模块调用和请求处理等。 代理转发 在本地缓存历史应答数据 Nginx服务器架构示意图如下: Nginx服务器的进程: ...原创 2018-12-03 16:31:38 · 168 阅读 · 0 评论 -
三、Nginx服务器架构初探(3.2 Nginx服务器的web请求处理机制)
Nginx的与众不同之处体现在: 模块化设计; 对客户端请求的并行处理: 多进程; 多线程; 异步; 多进程方式: 处理方式:服务器主进程每接收到一个客户端时就建立一个子进程,与该客户端建立连接、处理交互,直接连接断开,子进程结束。 优点: 实现简...原创 2018-12-03 16:31:09 · 174 阅读 · 0 评论 -
三、Nginx服务器架构初探(3.1 模块化结构)
本章要点: 模块化结构的相关知识。 Nginx如何处理web请求。 Nginx的事件驱动模型。 Nginx的设计架构概览。 Nginx模块化结构: 模块类别划分: 核心模块; 包含两类功能: 主体功能:进程管理,权限控制,错误日志记录,配置解析等。 ...原创 2018-12-03 16:30:21 · 173 阅读 · 0 评论 -
第2章 Nginx服务器的安装部署(2.4 基础配置实例)
实例: ### 全局块开始 ### # 配置允许运行Nginx服务器的用户和用户组 user nobody nobody; # 配置允许Nginx进程生成的worker process数 worker_processes 3; # 配置Nginx...原创 2018-11-19 18:16:02 · 109 阅读 · 0 评论 -
第2章 Nginx服务器的安装部署(2.3 基础配置指令)
nginx.conf文件的结构 全局块 events块 http块 http全局块 server块(一个或多个) server全局块 location块(一个或多个) 各个块的作用: 全局块: 位置:配置文件开头到...原创 2018-11-19 18:14:40 · 141 阅读 · 0 评论 -
第2章 Nginx服务器的安装部署(2.2 启停控制)
Nginx服务器的信号控制: 向Nginx服务的主进程发送信号的方式,有两种: 使用nginx二进制文件。 使用kill命令:kill SIGNAL PID。(实测不可用!!) SIGNAL用于指定信号,下文说明支持的信号。 PID为Nginx服务的主进程的PID,下文说明获取方式。 ...原创 2018-11-19 18:13:57 · 101 阅读 · 0 评论 -
第2章 Nginx服务器的安装部署(2.1 安装)
从官网获取Nginx服务器的安装文件,如下图: Nginx服务器的版本分为三种类型:开发版本、稳定版本和过期版本。 CHANGES文件:记录了对应版本的功能变更日志。 安装Nginx服务器: Windows平台 安装: 在官网下载Windows平台的Nginx最新稳定版本:nginx-1.14...原创 2018-11-19 18:12:01 · 129 阅读 · 0 评论 -
Nginx源码分析:ngx_align_ptr(p, a)
Nginx源码:#define ngx_align_ptr(p, a) (u_char *) (((uintptr_t) (p) + ((uintptr_t) a - 1)) & ~((uintptr_t) a - 1)) 作用:返回一个值,该值大于等于p,并且是a的最小倍数。即几字节对其的问题。 分析: uintptr_t数据类型有ISO C99定义, ...原创 2018-12-03 16:33:30 · 228 阅读 · 0 评论