OpenResty(ngx_openresty) 是一个基于 NGINX 的可伸缩的 Web 平台,由中国人章亦春发起,提供了很多高质量的第三方模块。
OpenResty 是一个强大的 Web 应用服务器,Web 开发人员可以使用 Lua 脚本语言调动Nginx 支持的各种 C 以及 Lua 模块,更主要的是在性能方面,OpenResty可以 快速构造出足以胜任 10K 乃至1000K以上并发连接响应的超高性能 Web 应用系统。
OpenResty 简单理解,相当于封装了nginx,并且集成了LUA脚本,开发人员只需要简单的其提供了模块就可以实现相关的逻辑,而不再像之前,还需要在nginx中自己编写lua的脚本,再进行调用了。
安装OpenRest
yum install yum-utils
yum-config-manager --add-repo https://openresty.org/package/centos/openresty.repo
yum install openresty
默认安装在usr/local/openresty
Nginx
安装openresty会默认安装nginx在usr/local/openresty/nginx
修改usr/local/openresty/nginx/conf/nginx.conf
的第一行
#user nobody; 配置文件第一行原来为这样, 现改为下面的配置。
#将配置文件使用的根设置为root,目的就是将来要使用lua脚本的时候 ,直接可以加载在root下的lua脚本。
user root root;
访问linux服务器地址,即可出现
Welcome to OpenResty!
说明安装成功。
demo:微服务商城-openresty
预计要实现的效果是:
- 从mysql查询首页轮播广告大图
- 将数据存入到redis缓存
- 将数据储如nginx缓存
- Lua脚本 /root/lua/68/update_content.lua
ngx.header.content_type="application/json;charset=utf8"
local cjson = require("cjson")
local mysql = require("resty.mysql")
-- 获取用户请求的参数 (请求url链接的"?"后的参数)
local uri_args = ngx.req.get_uri_args()
-- 请求参数里的"id"参数的值
local id