Redis缓存使用内存来保存数据,不过内存的大小肯定是有限的,如果缓存的数据量变多这时候就需要缓存的淘汰策略了,那redis的淘汰策略是什么?下面来我们就来给大家讲解一下。
1.noeviction(默认策略):对于写请求不再提供服务,直接返回错误(DEL请求和部分特殊请求除外);
2.allkeys-lru:从所有key中使用LRU算法进行淘汰(LRU算法:即最近最少使用算法);
3.volatile-lru:从设置了过期时间的key中使用LRU算法进行淘汰;
4.allkeys-random:从所有key中随机淘汰数据;
5.volatile-random:从设置了过期时间的key中随机淘汰;
6.volatile-ttl:在设置了过期时间的key中,淘汰过期时间剩余最短的;
当使用volatile-lru、volatile-random、volatile-ttl这三种策略时,如果没有key可以被淘汰,则和noeviction一样返回错误;
redis如何连接命令?
我们知道,只有当客户端与服务器正常连接后才能够实现彼此的交互、通信。Redis 通过“Redis序列化协议”(简称“RESP”),实现客户端与服务端之间的连接通信,该协议主要包括两个部分:网络模型和序列化协议。
1.网络模型主要负责数据交互的组织方式;
2.序列化协议则实现了数据的序列化;
由此可知,客户端与服务端交互的数据是以序列后的协议数据进行传输的。
下面是一个简单的请求/响应示意图,如下所示:
连接命令应用
1) 建立连接
在确认 Redis 已经成功配置之后,(可参考《Windows下载安装 Redis》)开启一个客户端与服务器的连接,执行以下命令:
C:\Users\Administrator>redis-cli 127.0.0.1:6379>
2) 验证连接
下面看一组实例演示:
#通过配置文件或者或者config命令配置客户端连接密码 redis 127.0.0.1:6379> CONFIG SET requirepass 123456 OK #验证给定的密码和配置文件密码是否一致 redis 127.0.0.1:6379> AUTH 123456 OK #检测客户端与服务器是否连接正常 redis 127.0.0.1:6379> PING PONG #切换到2库 127.0.0.1:6379> SELECT 2 OK 127.0.0.1:6379[2]> ECHO "hello www.biancheng.net" "hello www.biancheng.net" #中断连接 127.0.0.1:6379> QUIT C:\Users\Administrator>
上述示例,通过AUTH命令验证密码,从而证明了客户端已经连接到了 Redis 服务,然后我们使用 PING 命令来检测服务器运行是否正常。
这样就完成了Redis 连接命令的操作,其实Redis 连接命令是主要用于验证 Redis 服务器的连接状态的,所以当Redis 连接有问题,我们可以进行以上操作!最后大家如果想要了解更多java架构师知识,敬请关注奇Q工具网。
推荐阅读: