# Nginx+Redis 搭建高性能缓存利器
## 一. OpenResty
OpenResty是一个基于 Nginx与 Lua的高性能 Web平台,其内部集成了大量精良的 Lua库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态Web 应用、Web 服务和动态网关。
接入层缓存技术就是使用OpenResty的技术用Lua语言进行二次开发。
![图片](https://mmbiz.qpic.cn/mmbiz_png/tuSaKc6SfPrWlWkN2aVR3ia3icG4aWTjBVLANAXFoGjdZeL3h7E1ibsW7L115ibicicVjD02qicATlNtiby8vw7NFqMhsw/640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1)
## 二.Nginx +redis
下图左边是常用的架构,http请求经过nginx负载均衡转发到tomcat,tomcat再从redis读取数据,整个链路过程是串行的,当tomcat挂掉或者tomcat线程数被消耗完,就无法正常返回数据。
使用OpenResty的lua-resty-redis模块使nginx具备直接访问redis的能力,不占用tomcat线程,Tomcat暂时挂掉仍可正常处理请求,减少响应时长,提高系统并发能力。
![图片](https://mmbiz.qpic.cn/mmbiz_png/tuSaKc6SfPrWlWkN2aV