mySQL里有2000w数据,redis中只存20w的数据,如何保证redis中的数据都是热点数据

这个面试题其实考察的是redis的淘汰机制:

noeviction: 不删除策略。当达到最大内存限制时, 如果需要使用更多内存,则直接返回错误信息。(redis默认淘汰策略)
allkeys-lru: 在所有key中优先删除最近最少使用(less recently used ,LRU) 的 key。
allkeys-random: 在所有key中随机删除一部分 key。 volatile-lru: 在设置了超时时间(expire)的key中优先删除最近最少使用(less recently used ,LRU) 的 key。 volatile-random:
在设置了超时时间(expire)的key中随机删除一部分 key。 volatile-ttl: 在设置了超时时间(expire)的key中优先删除剩余时间(time to live,TTL) 短的key。

首先大概计算数据所占用的内存,然后可以在配置文件里面设置maxmemory(单位是byte字节)参数和参数maxmemory-policy(过期策略)
在这里插入图片描述
上面描述大概就是说要注意,设置的值
在这里插入图片描述
设置淘汰机制:
在这里插入图片描述

世界上所有的不公平都是由于当事人能力不足造成的.
原文地址:https://www.cnblogs.com/javayida/p/13347028.html