一. OpenResty
OpenResty是一个基于 Nginx与 Lua的高性能 Web平台,其内部集成了大量精良的 Lua库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态Web 应用、Web 服务和动态网关。
接入层缓存技术就是使用OpenResty的技术用Lua语言进行二次开发。

图片
二.Nginx +redis
下图左边是常用的架构,http请求经过nginx负载均衡转发到tomcat,tomcat再从redis读取数据,整个链路过程是串行的,当tomcat挂掉或者tomcat线程数被消耗完,就无法正常返回数据。
使用OpenResty的lua-resty-redis模块使nginx具备直接访问redis的能力,不占用tomcat线程,Tomcat暂时挂掉仍可正常处理请求,减少响应时长,提高系统并发能力。

图片
三.压缩减少带宽
数据大于1K,nginx压缩再保存到redis:
-
提高redis的读取速度
-
减少带宽的占用
压缩会消耗cpu时间,小于1K的数据不压缩tps更高。
Open

本文介绍了如何结合OpenResty和Redis构建高性能的缓存系统。通过OpenResty的lua-resty-redis模块,Nginx可以直接访问Redis,减少响应时长并提高并发能力。同时,通过压缩数据、定时更新、请求转发等策略优化了系统性能,实现了缓存的可配置化管理。
最低0.47元/天 解锁文章
1308

被折叠的 条评论
为什么被折叠?



