豆瓣阅读

    深入理解Nginx

    模块开发与架构解析(第2版)

    暂无评价
    阅读
    ¥30.00
    • 导言
    • 目录
    • 作品信息

    本书包括四大部分:Nginx能帮我做什么;如何编写一个定制的httpmodule;深入Nginx;实战。第一部分针对初级读者,介绍Nginx关于获取编译运行的基本知识。第二部分针对中级读者,以一个例子为主线,告诉读者如何开发一个http模块,这部分读者不需要深入了解Nginx的细节,只需要知道如何实现一个基本的http模块。第三部分针对高级读者,这是本书的重点,彻底解析Nginx架构,深入探讨Nginx各种设计的目的与意义,并对第二部分使用到的一些特性进行代码设计实现上的探索。读者读完本部分,会对整个Nginx架构有清晰的认识,可以编写各种模块(不局限于http模块)插入到Nginx中,从而定制自己的Nginx。第四部分针对中高级读者,以Tengine的开源模块为例,帮助读者从实战角度理解第二、三部分描述的内容。

    作者:陶辉

    1. 前言
    2. 第一部分 Nginx能帮我们做什么
    3. 第1章 研究Nginx前的准备工作
    4. 1.1 Nginx是什么
    5. 1.2 为什么选择Nginx
    6. 1.3 准备工作
    7. 1.4 编译安装Nginx
    8. 1.5 configure详解
    9. 1.6 Nginx的命令行控制
    10. 1.7 小结
    11. 第2章 Nginx的配置
    12. 2.1 运行中的Nginx进程间的关系
    13. 2.2 Nginx配置的通用语法
    14. 2.3 Nginx服务的基本配置
    15. 2.4 用HTTP核心模块配置一个静态Web服务器
    16. 2.5 用HTTP proxy module配置一个反向代理服务器
    17. 2.6 小结
    18. 第二部分 如何编写HTTP模块
    19. 第3章 开发一个简单的HTTP模块
    20. 3.1 如何调用HTTP模块
    21. 3.2 准备工作
    22. 3.3 如何将自己的HTTP模块编译进Nginx
    23. 3.4 HTTP模块的数据结构
    24. 3.5 定义自己的HTTP模块
    25. 3.6 处理用户请求
    26. 3.7 发送响应
    27. 3.8 将磁盘文件作为包体发送
    28. 3.9 用C++语言编写HTTP模块
    29. 3.10 小结
    30. 第4章 配置、error日志和请求上下文
    31. 4.1 http配置项的使用场景
    32. 4.2 怎样使用http配置
    33. 4.3 HTTP配置模型
    34. 4.4 error日志的用法
    35. 4.5 请求的上下文
    36. 4.6 小结
    37. 第5章 访问第三方服务
    38. 5.1 upstream的使用方式
    39. 5.2 回调方法的执行场景
    40. 5.3 使用upstream的示例
    41. 5.4 subrequest的使用方式
    42. 5.5 subrequest执行过程中的主要场景
    43. 5.6 subrequest使用的例子
    44. 5.7 小结
    45. 第6章 开发一个简单的HTTP过滤模块
    46. 6.1 过滤模块的意义
    47. 6.2 过滤模块的调用顺序
    48. 6.3 HTTP过滤模块的开发步骤
    49. 6.4 HTTP过滤模块的简单例子
    50. 6.5 小结
    51. 第7章 Nginx提供的高级数据结构
    52. 7.1 Nginx提供的高级数据结构概述
    53. 7.2 ngx_queue_t双向链表
    54. 7.3 ngx_array_t动态数组
    55. 7.4 ngx_list_t单向链表
    56. 7.5 ngx_rbtree_t红黑树
    57. 7.6 ngx_radix_tree_t基数树
    58. 7.7 支持通配符的散列表
    59. 7.8 小结
    60. 第三部分 深入Nginx
    61. 第8章 Nginx基础架构
    62. 8.1 Web服务器设计中的关键约束
    63. 8.2 Nginx的架构设计
    64. 8.3 Nginx框架中的核心结构体ngx_cycle_t
    65. 8.4 Nginx启动时框架的处理流程
    66. 8.5 worker进程是如何工作的
    67. 8.6 master进程是如何工作的
    68. 8.7 ngx_pool_t内存池
    69. 8.8 小结
    70. 第9章 事件模块
    71. 9.1 事件处理框架概述
    72. 9.2 Nginx事件的定义
    73. 9.3 Nginx连接的定义
    74. 9.4 ngx_events_module核心模块
    75. 9.5 ngx_event_core_module事件模块
    76. 9.6 epoll事件驱动模块
    77. 9.7 定时器事件
    78. 9.8 事件驱动框架的处理流程
    79. 9.9 文件的异步I/O
    80. 9.10 TCP协议与Nginx
    81. 9.11 小结
    82. 第10章 HTTP框架的初始化
    83. 10.1 HTTP框架概述
    84. 10.2 管理HTTP模块的配置项
    85. 10.3 监听端口的管理
    86. 10.4 server的快速检索
    87. 10.5 location的快速检索
    88. 10.6 HTTP请求的11个处理阶段
    89. 10.7 HTTP框架的初始化流程
    90. 10.8 小结
    91. 第11章 HTTP框架的执行流程
    92. 11.1 HTTP框架执行流程概述
    93. 11.2 新连接建立时的行为
    94. 11.3 第一次可读事件的处理
    95. 11.4 接收HTTP请求行
    96. 11.5 接收HTTP头部
    97. 11.6 处理HTTP请求
    98. 11.7 subrequest与post请求
    99. 11.8 处理HTTP包体
    100. 11.9 发送HTTP响应
    101. 11.10 结束HTTP请求
    102. 11.11 小结
    103. 第12章 upstream机制的设计与实现
    104. 12.1 upstream机制概述
    105. 12.2 启动upstream
    106. 12.3 与上游服务器建立连接
    107. 12.4 发送请求到上游服务器
    108. 12.5 接收上游服务器的响应头部
    109. 12.6 不转发响应时的处理流程
    110. 12.7 以下游网速优先来转发响应
    111. 12.8 以上游网速优先来转发响应
    112. 12.9 结束upstream请求
    113. 12.10 小结
    114. 第13章 邮件代理模块
    115. 13.1 邮件代理服务器的功能
    116. 13.2 邮件模块的处理框架
    117. 13.3 初始化请求
    118. 13.4 接收并解析客户端请求
    119. 13.5 邮件认证
    120. 13.6 与上游邮件服务器间的认证交互
    121. 13.7 透传上游邮件服务器与客户端间的流
    122. 13.8 小结
    123. 第14章 进程间的通信机制
    124. 14.1 概述
    125. 14.2 共享内存
    126. 14.3 原子操作
    127. 14.4 Nginx频道
    128. 14.5 信号
    129. 14.6 信号量
    130. 14.7 文件锁
    131. 14.8 互斥锁
    132. 14.9 小结
    133. 第15章 变量
    134. 15.1 使用内部变量开发模块
    135. 15.2 内部变量工作原理
    136. 15.3 定义内部变量
    137. 15.4 外部变量与脚本引擎
    138. 15.5 小结
    139. 第16章 slab共享内存
    140. 16.1 操作slab共享内存的方法
    141. 16.2 使用slab共享内存池的例子
    142. 16.3 slab内存管理的实现原理
    143. 16.4 小结

    作者陶辉

    类别 图书 / 非虚构

    出版社机械工业出版社

    出版日期

    提供方华章数媒

    标签计算机(1313)软件(146)项目开发(3)

    喜欢这本书的人也喜欢

      还没有读者为它写评论