本文介绍的OpenResty 为开源版本 OpenResty,官网地址为:https://openresty.org/cn/,如需了解商业版本,可访问商业官网:https://openresty.com.cn/cn/;文中所使用到的软件版本:OpenResty1.21.4.2、pcre 8.43、opnessl 1.1.1s、zlib 1.2.11、CentOS7.9.2009。

1、简介

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 等都进行一致的高性能响应。

2、安装

OpenResty的安装与 Nginx 基本一致。

2.1、下载源码

OpenResty源码:https://openresty.org/cn/download.html
pcre 源码:http://www.pcre.org/
openssl 源码:https://www.openssl.org/source/
zlib 源码:http://www.zlib.net/

下载后解压:

tar zxvf openresty-1.21.4.2.tar.gzunzip pcre-8.43.ziptar zxvf openssl-1.1.1s.tar.gztar zxvf zlib-1.2.11.tar.gz

2.2、编译安装

cd openresty-1.21.4.2./configure --prefix=/home/mongo/soft/openresty-1.21.4.2 --with-luajit --with-pcre=/home/mongo/installfile/pcre-8.43 --with-http_ssl_module --with-openssl=/home/mongo/installfile/openssl-1.1.1s --with-zlib=/home/mongo/installfile/zlib-1.2.11 --with-mail --with-streammakemake install

–with-luajit表示使用默认的 luajit,也可以指定其他的 luajit 目录;其他参数说明可参考:Nginx 入门实战(1)–简介及安装。

2.3、启动

OpenResty同 Nginx 一样默认配置了一个端口为 80 Http 服务器,使用普通用户启动需要修改该端口;编辑 conf/nginx.conf 文件:

http {    include       mime.types;    default_type  application/octet-stream;    ...    server {        listen       8080;        ...

执行启动命令:

sbin/nginx

启动后访问 8080 端口:

2.4、停止及重启

sbin/nginx -s stop #停止sbin/nginx -s reload #重启