一级缓存本地缓存实现
二级缓存redis缓存实现
三级缓存nginx缓存实现(80%请求处理在这一层级)
openresty安装
命令示例:
代码语言:javascript复制yum install -y readline-devel pcre-devel openssl-devel gcc
wget http://openresty.org/download/openresty-1.21.4.1.tar.gz
tar -zxvf openresty-1.21.4.1.tar.gz
cd openresty-1.21.4.1
cd bundle
cd LuaJIT-2.1-20220411
make clean && make && make install
ln -sf luajit-2.1.0-beta3 /usr/local/bin/luajit
wget https://github.com/FRiCKLE/ngx_cache_purge/archive/2.3.tar.gz
tar -zxvf 2.3.tar.gz
wget https://github.com/yaoweibin/nginx_upstream_check_module/archive/v0.3.0.tar.gz
tar -zxvf v0.3.0.tar.gz
cd bundle
./configure --prefix=/usr/servers --with-http_realip_module --with-pcre --with-luajit --add-module=./bundle/ngx_cache_purge-2.3/ --add-module=./bundlnginx_upstream_check_module-0.3.0/
make && make install
ngnix lua 执行lua文件
代码语言:javascript复制vim ./lua/test.lua
test.lua文件中插入
ngx.say(" excute lua file successfully! ");
nginx.conf修改
location / {
#root html;
#index index.html index.htm;
default_type text/html;
#content_by_lua_block {
# ngx.say("hello, world")
#}
content_by_lua_file lua/test.lua;
}
./sbin/nginx -s reload刷新配置
刷新页面后则显示
excute lua file successfully!
此处可以看到nginx只要请求8080接口返回的就是lua文件了,这里我们可以实现自己的缓存页面已到达nginx缓存目的,将百分之80的请求再此处进行处理,降低服务器压力;