OpenResty+缓存穿透基本介绍

474 阅读1分钟
OpenResty
1.lua表达式
2.Nginx的安装
3.OpenResty
因为咱们已经意识到了Nginx 很强大,咱们也想使用它来进行逻辑上的开发,但是由于Nginx 是C语言
写的,所以Java开发工程师很难在上边进行开发,所以咱们有了OpenResty ,OpenResty 一套底层封装了Nginx
和Lua 表达式的这么一个技术或者叫做环境,有了它之后,咱们就可以通过Lua 来进行web 的开发

4.缓存预热:
意思就是在项目启动时,就将数据库中的数据加载到缓存中,有了缓存之后,就可以避免项目启动时
无缓存从而请求直击数据库的这种情况发生
5.缓存穿透
这个要查询的数据 在数据库中和缓存中都不存在的查询
初级版:
5.1 判断,如果是负数,那么直接拦截
5.2 如果是查询缓存和数据库都没有,可以将这些数据这个id 存入到缓存中,下次过来访问时,需要有相同的id,此时直接就可以缓存中国返回
以上两种方案:都无法解决随机id 访问这种操作
网关处:做了一个白名单-> 将数据库中的所有数据的id 存入到集合中
当要进行访问时,去判断要查询的id ,是否在这个白名单中,如果在,放他去查询,如果不在,直接返回
问题:如果商品数据量过大,此时呢,这个集合就会很大
采用布隆过滤器来解决
他的思路非常类似于map对key的处理