当前位置:首页 > 工业技术
OpenResty完全开发指南  构建百万级别并发的Web应用
OpenResty完全开发指南  构建百万级别并发的Web应用

OpenResty完全开发指南 构建百万级别并发的Web应用PDF电子书下载

工业技术

  • 电子书积分:10 积分如何计算积分?
  • 作 者:罗剑锋著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2018
  • ISBN:9787121348969
  • 页数:218 页
图书介绍:OpenResty是一个基于Nginx的高性能 Web 平台,能够方便地搭建处理超高并发、扩展性极高的动态 Web 应用、Web 服务和动态网关。与PHP、Python、Go、Node.js等现有的其他Web开发语言/环境相比,OpenResty具有高性能、高灵活性、易于学习等许多优点,已经有为数不少的国内外大公司基于OpenResty构建自己的业务应用,包括Adobe、CloudFlare、DropBox、GitHub等。虽然OpenResty自带完善的帮助文档,开发社区也很活跃,但它毕竟还是一个较新的开发平台,相关的学习资料——特别的中文资料较少,本书基于作者多年使用OpenResty的经验,希望能够为OpenResty在国内的普及尽一份自己的力量,也希望读者能够利用OpenResty开发出更多更好的Web应用。
《OpenResty完全开发指南 构建百万级别并发的Web应用》目录

第0章 导读 1

0.1 关于本书 1

0.2 读者对象 1

0.3 读者要求 3

0.4 运行环境 3

0.5 本书的结构 3

0.6 如何阅读本书 5

0.7 本书的源码 5

第1章 总论 7

1.1 简介 7

1.2 历史 8

1.3 组成 9

1.4 版本 11

1.5 安装 12

1.5.1 直接安装 12

1.5.2 源码安装 13

1.5.3 定制安装 13

1.6 目录结构 14

1.7 启停服务 15

1.8 组件管理工具 15

1.9 命令行工具 16

1.10 参考手册 18

1.11 性能对比 18

1.12 应用架构 21

1.13 总结 22

第2章 Nginx平台 23

2.1 简介 23

2.2 进程模型 24

2.3 配置文件 25

2.4 变量 26

2.5 HTTP服务 27

2.5.1 server配置 28

2.5.2 location配置 28

2.6 TCP/UDP服务 29

2.7 反向代理 29

2.7.1 上游集群 30

2.7.2 代理转发 31

2.8 运行日志 31

2.8.1 访问日志 32

2.8.2 错误日志 32

2.9 总结 32

第3章 Lua语言 35

3.1 简介 35

3.2 注释 36

3.3 数据类型 36

3.4 字符串 37

3.5 变量 38

3.6 运算 39

3.6.1 算术运算 39

3.6.2 关系运算 39

3.6.3 逻辑运算 40

3.6.4 字符串运算 40

3.6.5 注意事项 41

3.7 控制语句 41

3.7.1 语句块 41

3.7.2 赋值语句 41

3.7.3 分支语句 42

3.7.4 循环语句 43

3.8 函数 44

3.8.1 定义函数 44

3.8.2 参数和返回值 45

3.9 表 46

3.9.1 定义表 46

3.9.2 操作表 46

3.9.3 范围循环 47

3.9.4 作为函数的参数 48

3.10 模块 48

3.11 面向对象 49

3.11.1 基本特性 49

3.11.2 原型模式 50

3.11.3 self参数 51

3.12 标准库 51

3.12.1 base库 52

3.12.2 package库 52

3.12.3 string库 53

3.12.4 table库 54

3.12.5 math库 55

3.12.6 io库 56

3.12.7 os库 57

3.12.8 debug库 57

3.12.9 使用技巧 57

3.13 高级特性 58

3.13.1 闭包 58

3.13.2 保护调用 58

3.13.3 可变参数 59

3.14 总结 59

第4章 LuaJIT环境 61

4.1 简介 61

4.2 goto语句 62

4.3 jit库 62

4.4 table库 63

4.5 bit库 63

4.6 ffi库 65

4.7 编译为字节 码 67

4.8 编译为机器码 68

4.9 总结 68

第5章 开发概述 71

5.1 应用示例 71

5.1.1 编码实现 71

5.1.2 测试验证 73

5.2 运行命令 74

5.3 目录结构 75

5.4 配置指令 76

5.5 运行机制 77

5.5.1 处理阶段 77

5.5.2 执行程序 79

5.5.3 定时任务 81

5.5.4 流程图 81

5.6 功能接口 83

5.7 核心库 83

5.8 应用开发流程 84

5.9 总结 85

第6章 基础功能 87

6.1 系统信息 87

6.2 运行日志 88

6.3 时间日期 89

6.3.1 当前时间 90

6.3.2 时间戳 90

6.3.3 格式化时间戳 90

6.3.4 更新时间 91

6.3.5 睡眠 91

6.4 数据编码 92

6.4.1 Base64 92

6.4.2 JSON 92

6.4.3 MessagePack 94

6.5 正则表达式 95

6.5.1 配置指令 95

6.5.2 匹配选项 96

6.5.3 匹配 96

6.5.4 查找 98

6.5.5 替换 99

6.5.6 切分 100

6.6 高速缓存 101

6.6.1 创建缓存 101

6.6.2 使用缓存 102

6.7 总结 103

第7章 HTTP服务 105

7.1 简介 105

7.2 配置指令 106

7.3 常量 107

7.3.1 状态码 107

7.3.2 请求方法 108

7.4 变量 108

7.4.1 读变量 108

7.4.2 写变量 109

7.5 基本信息 110

7.5.1 请求来源 110

7.5.2 起始时间 110

7.5.3 请求头 110

7.5.4 暂存数据 111

7.6 请求行 111

7.6.1 版本 112

7.6.2 方法 112

7.6.3 地址 112

7.6.4 参数 113

7.7 请求头 114

7.7.1 读取数据 114

7.7.2 改写数据 115

7.8 请求体 115

7.8.1 丢弃数据 115

7.8.2 读取数据 115

7.8.3 改写数据 116

7.9 响应头 117

7.9.1 改写数据 117

7.9.2 发送数据 118

7.9.3 过滤数据 118

7.10 响应体 118

7.10.1 发送数据 118

7.10.2 过滤数据 119

7.11 手动收发数据 120

7.12 流程控制 121

7.12.1 重定向请求 121

7.12.2 终止请求 121

7.13 检测断连 122

7.14 综合示例 123

7.15 总结 126

第8章 访问后端 127

8.1 简介 127

8.2 子请求 128

8.2.1 接口说明 128

8.2.2 应用示例 129

8.2.3 使用建议 130

8.3 协程套接字 131

8.3.1 配置指令 131

8.3.2 创建对象 132

8.3.3 超时设置 133

8.3.4 建立连接 133

8.3.5 复用连接 134

8.3.6 关闭连接 134

8.3.7 发送数据 135

8.3.8 接收数据 135

8.3.9 应用示例 136

8.4 DNS客户端 137

8.4.1 创建对象 138

8.4.2 查询地址 138

8.4.3 缓存地址 139

8.5 HTTP客户端 140

8.5.1 创建对象 140

8.5.2 发送请求 140

8.6 WebSocket客户端 142

8.6.1 创建对象 142

8.6.2 建立连接 143

8.6.3 关闭连接 143

8.6.4 复用连接 143

8.6.5 发送数据 144

8.6.6 接收数据 144

8.7 Redis客户端 145

8.7.1 创建对象 145

8.7.2 建立连接 145

8.7.3 关闭连接 146

8.7.4 复用连接 146

8.7.5 执行命令 146

8.7.6 管道 147

8.7.7 脚本 148

8.8 MySQL客户端 148

8.8.1 创建对象 149

8.8.2 建立连接 149

8.8.3 服务器版本号 150

8.8.4 关闭连接 150

8.8.5 复用连接 150

8.8.6 简单查询 150

8.8.7 高级查询 152

8.8.8 防止SQL注入 152

8.9 总结 153

第9章 反向代理 155

9.1 简介 155

9.2 上游集群 156

9.2.1 静态服务器信息 157

9.2.2 动态服务器信息 158

9.2.3 服务器下线 159

9.2.4 当前上游集群 159

9.3 负载均衡 160

9.3.1 使用方式 160

9.3.2 功能接口 161

9.4 总结 162

第10章 高级功能 163

10.1 共享内存 163

10.1.1 配置指令 163

10.1.2 写操作 164

10.1.3 读操作 165

10.1.4 删除操作 166

10.1.5 计数操作 166

10.1.6 队列操作 166

10.1.7 过期操作 167

10.1.8 其他操作 168

10.2 定时器 168

10.2.1 配置指令 168

10.2.2 单次任务 169

10.2.3 周期任务 170

10.3 进程管理 171

10.3.1 进程类型 171

10.3.2 工作进程 172

10.3.3 监控进程 173

10.3.4 特权进程 173

10.4 轻量级线程 174

10.4.1 启动线程 175

10.4.2 等待线程 175

10.4.3 挂起线程 176

10.4.4 停止线程 177

10.4.5 信号量 178

10.5 总结 179

第11章 HTTPS服务 181

11.1 简介 181

11.1.1 密码学 181

11.1.2 网络协议 182

11.2 服务配置 184

11.3 应用开发 185

11.4 基本信息 185

11.4.1 协议版本号 185

11.4.2 主机名 186

11.4.3 地址 186

11.5 加载证书 187

11.5.1 清除证书 187

11.5.2 设置证书 187

11.5.3 设置私钥 188

11.5.4 测试验证 189

11.6 查验证书 189

11.6.1 发送查询 189

11.6.2 通知客户端 191

11.7 会话复用 191

11.7.1 Session ID 191

11.7.2 Session Tickets 193

11.8 总结 193

第12章 HTTP2服务 195

12.1 简介 195

12.2 服务配置 196

12.3 应用开发 197

12.4 测试验证 197

12.5 总结 198

第13章 WebSocket服务 199

13.1 简介 199

13.2 服务配置 200

13.3 应用开发 200

13.4 总结 202

第14章 TCP/UDP服务 203

14.1 简介 203

14.2 配置指令 204

14.3 运行机制 205

14.3.1 处理阶段 205

14.3.2 执行程序 206

14.3.3 流程图 206

14.4 功能接口 208

14.5 应用示例 208

14.6 总结 210

第15章 结束语 211

附录A 推荐书目 215

附录B 定制OpenResty 217

返回顶部