zoukankan      html  css  js  c++  java
  • redis常见问题

    1、redis满了,怎么处理?

     (1)内存淘汰策略(2)集群,动态增加redis服务器(推荐)

    2、val比较大时(比如50MB),会有什么影响?

      因为redis是单线程,多路IO复用的,所以当一个val比较大时,处理时间也会变长,导致其他操作会阻塞。

    3、mysql里有2000W数据,redis只存20w的数据,如何保证redis中的数据都是热点数据?

    redis默认是:noeviction: 不删除策略。

    可以配置,内存淘汰策略,来实现随时间动态调整redis内存数据。

    提供6种淘汰策略:

      voltile-lru:从已设置过期时间的数据集(server.db[i].expires)中挑选最近最少使用的数据淘汰

      volatile-ttl:从已设置过期时间的数据集(server.db[i].expires)中挑选将要过期的数据淘汰

      volatile-random:从已设置过期时间的数据集(server.db[i].expires)中任意选择数据淘汰

      allkeys-lru:从数据集(server.db[i].dict)中挑选最近最少使用的数据淘汰

      allkeys-random:从数据集(server.db[i].dict)中任意选择数据淘汰

      no-enviction(驱逐):禁止驱逐数据

  • 相关阅读:
    批量插入测试脚本
    Show Profile分析sql语句的资源消耗
    慢查询日志
    ORDER BY优化
    Join查询
    Explain(执行计划)分析
    索引
    MySQL中的DML(数据操作语言)和DQL(数据查询语言)
    MySQL中的DDL(数据定义语言)和DCL(数据控制语言)
    MySQL架构体系介绍
  • 原文地址:https://www.cnblogs.com/xingrui/p/10759195.html
Copyright © 2011-2022 走看看