redis

头像
棘丶
    阅读 1 分钟

    redis持久化存储策略

    AOF模式-(默认)

    特点:aof模式采用记录用户执行的状态,缺点:持久化文件较大,恢复数据能力较慢,优点:能保证数据的安全性.

    RDB模式-(需要手动开启)

    特点:RDB模式采用的是快照的方式并且会覆盖之前的内存快照,定期进行持久化到磁盘中,优点:持久化文件效小,回复数据快,缺点:不能保证数据的安全性.

    总结

    1.当用户允许丢失某些数据时一般采用rdb模式进行数据持久化.
    2.当用户不允许丢失数据时一般采用aof模式进行数据持久化.

    **在reids集群中一般设置主机为rdb模式,从机采用aof模式,来提高性能..

    redis的内存优化

    LRU算法

    lru算法也就是页面置换算法利用了时间维度来进行了计算,会记录上一次访问的时间,当要删除时会删除时间较大的页面.

    LFU算法

    lfu算法会记录访问的引用次数,访问一次加1,为了保证指数衰减的平均使用次数,所以引用计数寄存器定时右移一位,当要删除时会删除较小的访问次数

    随机算法

    也就是随机删除(不可取)

    TTL算法

    检索失效时间,提前删除存活时间少的数据

    redis的8种内存优化策略

    1.volatile-lru  在设定了超时时间的数据中,采用lru算法.
    2.allkeys-lru  所有数据采用lru算法
    3.volatile-lfu  在超时的数据中采用lfu算法
    4.allkeys-lfu -> 所有数据采用lfu算法
    5.volatile-random -> 设定超时时间的数据采用随机算法
    6.allkeys-random -> 所有数据随机删除
    7.volatile-ttl ->  删除存活时间少的数据
    8.noeviction -> 不会删除数据,如果内存溢出报错返回.

    缓存的穿透

    是指在高并发的环境下不停的查询数据库中没有的数据,从而redis没有实现效果,导致数据库崩溃
    解决方法:当访问不存在时,当有用户连续访问过大,禁止IP访问,也可以在微服务中设置网关过滤.

    缓存的雪崩

    是指在高访问量时缓存的数据突然大量失效,从而直接大量去数据库查询数据,导致数据库压力过大崩溃.
    解决方法:配置多级缓存和设置数据失效时间不一致.

    缓存的击穿

    是指在高访问量时缓存的某条数据失效,去查询数据库期间一堆这条数据的查询业务涌向数据库从而崩溃.
    解决方法:配置多级一台失效时会寻第二台redis查询完毕直接返回即可

    关于伪静态的说明

    由于一般的搜索引擎只能检测静态的页面,不能检索动态页面信息,为了让浏览器能检索到所以,后缀名为html的动态页面.

    搜索引擎的工作原理(倒排索引)

    搜索引擎的搜索机制


    棘丶
    12 声望1 粉丝

    « 上一篇
    shiro理解

    引用和评论

    0 条评论