OpenResty 高性能网关开发教程
OpenResty 高性能网关开发教程
一套系统化的 OpenResty 网关开发指南,涵盖从基础概念到生产部署的完整知识体系。
为什么选择 OpenResty?
OpenResty 基于 Nginx 与 LuaJIT,将 Nginx 的高并发网络处理能力与 Lua 的灵活脚本能力完美结合。它能在单台机器上轻松处理数十万并发连接,同时保持极低的内存占用和延迟。
| 特性 | 说明 |
|---|
| 高性能 | 基于 Nginx 事件驱动模型,单机支持 10 万+ QPS |
| 可编程 | Lua 脚本嵌入 Nginx 各阶段,灵活定制 |
| 生态丰富 | lua-resty 系列库覆盖 Redis、MySQL、HTTP 等 |
| 生产验证 | Cloudflare、Kong、APISIX 等大规模使用 |
| 内存友好 | LuaJIT 的低内存占用 + 共享内存机制 |
教程结构
本教程共 16 章,按照「基础 → 核心功能 → 高级特性 → 生产部署」的递进顺序组织:
第一部分:基础篇
第二部分:核心功能篇
第三部分:高级特性篇
第四部分:架构与部署篇
学习路线建议
新手路线(约 2 周):
01 → 02 → 03 → 04 → 05 → 08 → 16
中级路线(约 1 个月):
01 → 04 → 05 → 06 → 07 → 08 → 09 → 10 → 11 → 16
全栈路线(约 2 个月):
按顺序全部完成,第 13-15 章可并行学习
前置要求
- Linux 基础操作(Ubuntu/CentOS 均可)
- HTTP 协议基础
- 命令行工具使用(curl、vim/nano)
- 了解基本的编程概念(变量、函数、循环)
无需 Lua 或 Nginx 开发经验,教程从零开始讲解。
代码约定
所有代码示例均经过测试,可直接运行。配置文件默认路径:
| 文件 | 路径 |
|---|
| 主配置 | /usr/local/openresty/nginx/conf/nginx.conf |
| 站点配置 | /usr/local/openresty/nginx/conf/conf.d/ |
| Lua 代码 | /usr/local/openresty/lua/ |
| 日志 | /usr/local/openresty/nginx/logs/ |
开始学习:第 01 章 - OpenResty 概述 →