OpenResty是一款基于基于NGINX和LuaJIT的Web平台。提供了很多高质量的第三方模块。Web开发人员可以使用Lua脚本语言调动Nginx支持的各种C及Lua模块。
软件特色
OpenResty是一个通过Lua扩展NGINX实现的可伸缩的Web平台。
OpenResty(也称为 ngx_openresty)是一个基于Nginx与Lua的高性能Web平台,其内部集成了大量精良的Lua库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态Web应用、Web服务和动态 网关。
OpenResty通过汇聚各种设计精良的Nginx模块(主要由OpenResty团队自主开发),从而将Nginx有效地变成一个强大的通用Web应用平台。这样,Web开发人员和系统工程师可以使用Lua脚本语言调动Nginx支持的各种C以及Lua模块,快速构造出足以胜任10K乃至1000K以上单机并发连接的高性能Web应用系统。
OpenResty的目标是让你的Web服务直接跑在Nginx服务内部,充分利用Nginx的非阻塞I/O模型,不仅仅对HTTP客户端请求,甚至于对远程后端诸如MySQL、PostgreSQL、Memcached以及Redis等都进行一致的高性能响应。
更新日志
本候选版本的重点变更有:
基于 NGINX 最新主干核心版本 1.19.9。
从 Mike Pall 维护的的上游 LuaJIT 同步大量修改。
引入新的宏 LUAJIT_TEST_FIXED_ORDER,用于以固定顺序遍历 lua 表。
当 lua 请求内存失败时,不是优雅关闭,而是调用 abort()。
现在 get_ctx_table 支持使用来自调用者的 ctx 表,这将减少创建新 ctx 表的成本。
修正了使用 lua-tablepool 时,清除 lua 表的内容,metatable 没有被清除的问题。
为了在使用 lua-tablepool 时获得更好的性能,当表格池的大小大于 max_pool_size 时,丢弃对象。
为 stream 子系统实现 ngx.process API。