| 书[0名0]: | Nginx Lua开发实战|7390730 |
| 图书定价: | 99元 |
| 图书作者: | 李明江 |
| 出版社: | [1机1] 械工业出版社 |
| 出版日期: | 2018/3/1 0:00:00 |
| ISBN号: | 9787111590293 |
| 开本: | 16开 |
| 页数: | 0 |
| 版次: | 1-1 |
| 目录 |
前言 部分 Nginx操作基础 [0第0]1章 Nginx高效服务器 2 1.1 Nginx的特点 2 1.2 Nginx的安装 3 1.3 configure命令参数 7 1.4 小结 12 [0第0]2章 数据库的基本操作 13 2.1 Nginx应用中的数据库 13 2.2 MySQL关系型数据库 15 2.2.1 yum安装方[0法0] 16 2.2.2 使用mysql测试服务 18 2.2.3 MySQL文件分布 19 2.2.4 数据库操作 19 2.3 Redis内存数据库 22 2.3.1 Redis安装 22 2.3.2 启动Redis服务 23 2.3.3 Redis 配置 23 2.3.4 参数说明 26 2.3.5 数据类型 29 2.4 PostgreSQL关系型数据库 31 2.5 Memcached内存数据库 33 2.5.1 Memcached安装 34 2.5.2 连接编辑 34 2.5.3 管理Memcached服务 35 2.5.4 Memcached命令 37 2.6 MongoDB分布式[0No0]SQL数据库 42 2.6.1 MongoDB安装 43 2.6.2 mongod.conf配置说明 45 2.7 小结 48 [0第0]3章 OpenResty 49 3.1 OpenResty:概述 49 3.2 OpenResty的组成 50 3.3 OpenResty的安装 52 3.4 Nginx多实例 54 3.5 小结 54 [0第0]4章 Nginx核心技术 55 4.1 Nginx设计目标 55 4.2 Nginx架构 57 4.2.1 事件驱动 57 4.2.2 异步多阶段处理 59 4.2.3 模块化设计 61 4.2.4 管理进程、工作进程设计 63 4.2.5 内存池 65 4.2.6 连接池 66 4.2.7 时间缓存 66 4.2.8 延迟关闭 67 4.2.9 跨平台 67 4.2.10 HTTP模块管道过滤模式 67 4.2.11 keepalive 68 4.2.12 pipeline 69 4.3 小结 69 [0第0]5章 Nginx的工作流程 70 5.1 Nginx的启动流程 70 5.2 管理进程的工作流程 72 5.3 工作进程的工作流程 75 5.4 配置加载流程 76 5.5 HTTP框架初始化流程 79 5.6 HTTP模块调用流程 81 5.7 HTTP请求处理流程 82 5.8 小结 83 [0第0]二部分 Lua脚本语言 [0第0]6章 Lua教程 86 6.1 Lua基础 86 6.1.1 Lua的特性 86 6.1.2 Lua的应用场景 87 6.1.3 安装Lua环境 87 6.2 Lua基本语[0法0] 88 6.2.1 个Lua程序 88 6.2.2 注释 89 6.2.3 标识符 90 6.2.4 关键词 90 6.2.5 全局变量 90 6.3 Lua的数据类型 90 6.4 Lua变量 96 6.4.1 赋值语句 96 6.4.2 索引 97 6.5 Lua循环 98 6.6 Lua流程控制 98 6.7 Lua函数 99 6.7.1 函数的定义 99 6.7.2 多返回值 100 6.7.3 可变参数 101 6.8 Lua运算符 101 6.8.1 算术运算符 102 6.8.2 关系运算符 102 6.8.3 逻辑运算符 103 6.8.4 其他运算符 104 6.8.5 运算符的[0优0]先级 105 6.9 Lua字符串 106 6.10 Lua数组 107 6.10.1 一维数组 107 6.10.2 多维数组 108 6.11 Lua迭代器 109 6.11.1 泛型for迭代器 109 6.11.2 无状态的迭代器 110 6.11.3 多状态的迭代器 111 6.12 Lua表 112 6.13 Lua模块与包 113 6.13.1 require函数 114 6.13.2 加载 [1机1] 制 115 6.13.3 C包 115 6.14 Lua元表 116 6.14.1 _index元方[0法0] 117 6.14.2 _newindex元方[0法0] 118 6.14.3 为表添加运算符 119 6.14.4 _c[0all0]元方[0法0] 119 6.14.5 _tostring元方[0法0] 120 6.15 Lua协同程序 121 6.15.1 基本语[0法0] 121 6.15.2 生产者–消费者问题 124 6.16 Lua错误处理 125 6.16.1 语[0法0]错误 125 6.16.2 运行错误 125 6.16.3 错误处理 126 6.16.4 error函数 126 6.16.5 pc[0all0]、xpc[0all0]、debug 127 6.17 Lua调试 128 6.18 Lua垃圾回收 130 6.19 Lua面向对象 131 6.19.1 Lua中面向对象 132 6.19.2 Lua继承 134 6.20 Lua数据库访问 136 6.21 小结 137 [0第0]7章 Lua通用库 138 7.1 字符串库 138 7.2 表库 141 7.3 文件I/O库 143 7.3.1 简单模式 144 7.3.2 完全模式 145 7.3.3 其他方[0法0] 146 7.4 数[0学0]库 147 7.5 操作系统库 150 7.6 小结 151 [0第0]三部分 Nginx开发技术 [0第0]8章 JSON数据交换格式 154 8.1 什么是JSON 154 8.2 JSON转换为对象 155 8.3 JSON与XML的比较 155 8.4 JSON语[0法0]规则 156 8.5 格式化 157 8.6 小结 158 [0第0]9章 nginx.conf文件配置 159 9.1 默认nginx.conf文件 159 9.2 nginx.conf示例 162 9.3 全局配置与[0顶0]层配置块 166 9.3.1 main全局配置 166 9.3.2 events配置块 170 9.3.3 http服务器配置块 172 9.3.4 ngx_http_core_module变量 194 9.3.5 stream 195 9.4 中文版nginx.conf 201 9.5 小结 204 [0第0]10章 Nginx下Lua实现 [1机1] 制 206 10.1 ngx_lua原理 206 10.2 HTTP请求的处理阶段 209 10.3 ngx_lua的处理阶段 210 10.4 Lua阶段解析 212 10.4.1 init_by_lua 212 10.4.2 init_worker_by_lua 213 10.4.3 set_by_lua 214 10.4.4 rewrite_by_lua 216 10.4.5 access_by_lua 217 10.4.6 content_by_lua 218 10.4.7 header_filter_by_lua 220 10.4.8 body_filter_by_lua 220 10.4.9 log_by_lua 220 10.4.10 balancer_by_lua_block 221 10.5 小结 222 [0第0]四部分 Nginx Lua开发实战 [0第0]11章 Redis操作 224 11.1 Redis操作方[0法0]概述 224 11.2 HttpRedis访问方[0法0] 225 11.2.1 示例 225 11.2.2 HttpRedis API 226 11.2.3 HttpRedis变量 228 11.3 HttpRedis2Module访问方[0法0] 229 11.3.1 示例 229 11.3.2 nginx.conf配置 230 11.3.3 常用指令 231 11.3.4 技术点 234 11.3.5 应答包解析 238 11.4 lua-resty-redis访问方[0法0] 239 11.4.1 示例 239 11.4.2 API函数 240 11.4.3 技术点 244 11.4.4 问题列表 246 11.4.5 限制 247 11.4.6 安装 247 11.5 小结 247 [0第0]12章 MySQL操作 248 12.1 lua-restry-mysql访问方式 248 12.1.1 示例 248 12.1.2 安装 250 12.1.3 方[0法0]与函数 251 12.1.4 多结果集返回示例 254 12.1.5 其他注意事项 255 12.1.6 限制 255 12.2 HttpDrizzleModule访问方式 255 12.2.1 示例 256 12.2.2 安装 257 12.2.3 技术点 258 12.2.4 配置指令 259 12.2.5 变量 263 12.2.6 输出格式 264 12.3 HttpDrizzleModule完整示例 265 12.4 小结 272 [0第0]13章 Memcached操作 273 13.1 mem-nginx-module访问方式 273 13.1.1 概述 273 13.1.2 命令 276 13.1.3 指令 279 13.1.4 安装 281 13.1.5 说明 281 13.1.6 示例 282 13.2 lua-resty-memcached 访问方式 285 13.2.1 概述 285 13.2.2 API 286 13.2.3 自动日志 291 13.2.4 限制 291 13.3 小结 291 [0第0]14章 PostgreSQL操作 292 14.1 概述 292 14.2 配置指令 293 14.3 配置变量 295 14.4 示例 296 14.5 小结 298 [0第0]15章 MongoDB操作 299 15.1 安装 299 15.2 配置 299 15.3 操作函数 300 15.3.1 连接对象方[0法0] 300 15.3.2 数据库对象方[0法0] 301 15.3.3 列对象方[0法0] 301 15.4 示例 302 15.5 小结 303 [0第0]16章 bit库的使用 304 16.1 示例 304 16.2 安装 305 16.3 函数 305 16.4 说明 307 16.5 小结 308 [0第0]17章 lfs库的使用 309 17.1 目录迭代示例 309 17.2 安装 310 17.3 LuaFileSystem函数 310 17.4 小结 312 [0第0]18章 resty.http库的使用 313 18.1 安装 313 18.2 概述 314 18.3 函数 315 18.3.1 连接类 315 18.3.2 应答类 318 18.3.3 代理类 319 18.3.4 工具类 319 18.4 小结 320 [0第0]19章 lcurl库的使用 321 19.1 安装 321 19.1.1 安装libcurl 321 19.1.2 安装lcurl 322 19.2 示例 322 19.3 函数 324 19.3.1 httpform类 325 19.3.2 easy类 327 19.3.3 multi类 331 19.3.4 error类 333 19.3.5 share类 333 19.4 常用变量 334 19.4.1 字符串数组类选项 334 19.4.2 字符串选项 334 19.4.3 数值型选项 336 19.4.4 布尔型选项 337 19.5 完整示例 338 19.6 小结 340 [0第0]20章 FFI扩展C库 341 20.1 示例 341 20.1.1 调用外部C函数 341 20.1.2 使用C结构体数据 342 20.2 FFI库的使用 344 20.2.1 载入FFI库 344 20.2.2 访问标准系统函数 344 20.2.3 访问zlib压缩库 345 20.2.4 为一个C类型定义元方[0法0] 346 20.2.5 转换C语[0法0] 347 20.3 FFI API 348 20.3.1 声明和访问外部符号 348 20.3.2 创建cdata对象 349 20.3.3 C类型信息 349 20.3.4 功能函数 350 20.3.5 特定目标信息 351 20.3.6 方[0法0]回调 351 20.3.7 扩展标准库函数 351 20.4 调用curl库的完整示例 352 20.5 小结 352 [0第0]21章 cjson库的使用 353 21.1 示例 353 21.2 函数 354 21.3 变量 358 21.4 小结 358 [0第0]22章 lua-resty-template类的使用 359 22.1 示例 359 22.2 模板符号 360 22.2.1 短转义符号 361 22.2.2 上下文表中的复杂key 361 22.2.3 HTML转义 361 22.2.4 保留的上下文key和[0评0]论 362 22.3 安装 363 22.3.1 Nginx/OpenResty配置 363 22.3.2 使用document_root 363 22.3.3 使用template_root 364 22.3.4 使用template_location 364 22.4 Lua API 364 22.5 模板预编译 368 22.6 模板助手 368 22.7 用[0法0]示例 369 22.7.1 引用模板 369 22.7.2 Layouts的views 370 22.7.3 使用Blocks 371 22.7.4 继承 373 22.7.5 Macros 374 22.7.6 调用模板中的方[0法0] 375 22.7.7 模板内嵌的Angular或其他标签/模板 376 22.7.8 模板内嵌的Markdown 376 22.7.9 LSP 377 22.8 FAQ 378 22.9 小结 379 [0第0]23章 WebSocket的使用 380 23.1 示例 381 23.2 安装 383 23.3 resty.websocket.server 383 23.4 resty.websocket.client 386 23.5 resty.websocket.protocol 389 23.6 使用注意事项 390 23.7 小结 390 [0第0]24章 TCP私有服务器实例 391 24.1 协议 391 24.1.1 协议总体要求 391 24.1.2 包头定义 392 24.1.3 协议命令 393 24.2 DDP系统架构 394 24.3 DDP服务实现 395 24.3.1 nginx.conf配置 395 24.3.2 init.lua 398 24.3.3 ddp.lua 399 24.3.4 DDP代码解析 405 24.3.5 Redis和MySQL的 location 407 24.3.6 管理页面REST操作 411 24.4 小结 412 [0第0]25章 WebSocket接入服务器实战 413 25.1 nginx.conf内容 413 25.2 ws_svr.lua内容 421 25.3 update_alarts代码 436 25.4 小结 438 [0第0]26章 Nginx应用简述 439 26.1 简单系统 439 26.2 读写分离系统 439 26.3 引入缓存系统 440 26.4 缓存主从系统 441 26.5 小结 442 [0第0]五部分 开发手册 [0第0]27章 ngx_lua_module模块配置指令详解 444 27.1 概述 444 27.2 Lua配置顺序 456 27.3 配置指令 457 27.4 小结 487 [0第0]28章 ngx_lua API详解 488 28.1 概述 488 28.2 API与常量 491 28.3 小结 565 |
这本书真是让我大开眼界!之前我对 Nginx 的了解仅限于一个高性能的 Web 服务器,知道它能做反向代理、负载均衡,但 Lua 在其中扮演的角色我一直很模糊。直到我翻开《Nginx Lua开发实战 计算机与互联网》,才真正明白 Lua 脚本能够如此深入地集成到 Nginx 的请求处理流程中。这本书没有一开始就抛出晦涩的代码,而是循序渐进地讲解了 Lua 的基础语法和 Nginx 模块化的设计理念,让我这个初学者也能很快上手。最令我印象深刻的是,书中通过大量的实际案例,展示了如何利用 Lua 编写自定义的 Nginx 模块,比如实现更灵活的访问控制、动态配置修改、甚至是与后端服务的智能交互。特别是关于缓存策略优化的章节,通过 Lua 脚本的介入,可以实现比 Nginx 内置缓存更精细的控制,这对于提升网站性能和降低服务器压力有着直接的帮助。而且,书中对性能调优的讲解也非常到位,不仅仅停留在理论层面,还提供了很多实用的技巧和方法,让我能够更好地理解和应用。我强烈推荐给所有想要深入理解 Nginx 并希望提升其功能的朋友。
评分不得不说,我被《Nginx Lua开发实战 计算机与互联网》这本书的深度和广度所震撼。它不仅仅是一本介绍 Nginx 如何加载 Lua 脚本的书,更像是一本将 Nginx 的扩展能力推向极致的宝典。作者在书中对于 Nginx 核心架构和 Lua 语言特性结合的阐述,简直是教科书级别的。我尤其欣赏书中对 OpenResty 生态系统的详细介绍,以及如何利用 LuaJIT 极大地提升 Lua 代码在 Nginx 中的执行效率。书中提供的那些关于如何构建高性能 API 网关、实现分布式鉴权、以及进行复杂的日志分析的案例,都非常有启发性。我之前一直在寻找一种更灵活的方式来处理一些定制化的网络请求逻辑,而这本书提供的解决方案,比如使用 Lua 编写的 `access_by_lua_block` 来实现细粒度的业务逻辑判断,或者利用 `rewrite_by_lua_block` 来动态地重写请求,都完美地解决了我的痛点。而且,书中对一些常见的安全漏洞和防御策略的讲解,也让我对如何构建更安全的 Web 应用有了更深刻的认识。这本书绝对是那些追求技术深度和追求极致性能的开发者的必备读物。
评分作为一名长期与 Web 开发打交道的老兵,我阅览过不少关于 Nginx 的书籍,但《Nginx Lua开发实战 计算机与互联网》这本书给我的感觉格外不同。它没有落入俗套地只是讲解 Nginx 的各种配置指令,而是将 Lua 脚本作为一种强大的工具,赋予了 Nginx 前所未有的灵活性和可编程性。我特别喜欢书中对于一些高级特性的讲解,比如如何利用 Lua 访问外部数据库、调用微服务、甚至进行实时的 A/B 测试。这些都远远超出了我之前对 Nginx 的认知范畴。书中给出的那些用 Lua 实现的服务端渲染(SSR)的例子,简直是把我惊到了,我从未想过 Nginx 能够承担如此复杂的业务逻辑。而且,作者在讲解过程中,非常注重代码的易读性和可维护性,提供的示例代码都经过精心设计,便于理解和学习。对于那些希望将 Nginx 从一个单纯的 Web 服务器,升级为一个能够处理复杂业务逻辑的平台级应用的朋友来说,这本书无疑是一扇全新的大门。
评分我一直觉得 Nginx 在处理高并发场景下,虽然性能卓越,但在某些定制化的业务逻辑实现上,总觉得有些力不从心。直到我接触到《Nginx Lua开发实战 计算机与互联网》这本书,我才真正领略到 Lua 脚本为 Nginx 带来的无限可能。书中对于 Lua 脚本在 Nginx 生命周期各个阶段的切入点,以及如何利用这些切入点实现各种高级功能的讲解,可以说是非常细致和深入。我尤其对书中关于如何使用 Lua 构建一个高性能的身份认证和授权中心的部分印象深刻,这不仅大大简化了后端服务的复杂度,还提高了整个系统的响应速度。而且,书中还涉及到了如何利用 Lua 进行流量整形、动态路由的实现,这些都是我一直在寻找的解决方案。这本书不仅仅是一本技术手册,更像是一本打开了 Nginx 潜能的“武林秘籍”,让我能够以一种全新的视角去审视和利用 Nginx。
评分说实话,我起初对这本书的期望并不是很高,以为只是一些 Nginx 结合 Lua 的基础教程。但《Nginx Lua开发实战 计算机与互联网》这本书彻底颠覆了我的看法。它以一种极其专业和系统的方式,讲解了如何将 Lua 脚本深度集成到 Nginx 的每一个角落,从而实现各种超乎想象的功能。书中关于如何利用 Lua 进行实时的数据处理和分析的章节,尤其让我耳目一新。我之前一直在考虑如何在高并发场景下对请求数据进行实时过滤和增强,而书中提供的 Lua 解决方案,比如利用 `body_filter_by_lua_block` 来修改响应体,或者使用 `log_by_lua_block` 来进行自定义日志记录,都为我提供了非常直接和有效的思路。而且,书中对错误处理和调试技巧的讲解也非常细致,避免了我在实践过程中走太多弯路。这本书无疑是那些希望将 Nginx 的能力发挥到极致,并愿意投入时间去深入学习的开发者的不二之选。
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等,本站所有链接都为正版商品购买链接。
© 2025 windowsfront.com All Rights Reserved. 静流书站 版权所有