【学习笔记】redis一些配置文件参数详解

配置文件

打开redis配置文件:
在这里插入图片描述

日志级别

在这里插入图片描述

loglevel
指定日志记录级别,Redis总共支持四个级别:debug、verbose、notice、warning,默认为notice
四个级别根据使用阶段来选择,生产环境选择notice 或者warning

设置密码

在这里插入图片描述

访问密码的查看、设置和取消
在命令中设置密码,只是临时的。重启redis服务器,密码就还原了。
永久设置,需要再配置文件中进行设置。

maxclients

 设置redis同时可以与多少个客户端进行连接。
 默认情况下为10000个客户端。
 如果达到了此限制,redis则会拒绝新的连接请求,并且向这些连接请求方发出“max number of clients reached”以作回应

maxmemory

在这里插入图片描述

 建议必须设置,否则,将内存占满,造成服务器宕机
 设置redis可以使用的内存量。一旦到达内存使用上限,redis将会试图移除内部数据,移除规则可以通过maxmemory-policy来指定。
 如果redis无法根据移除规则来移除内存中的数据,或者设置了“不允许移除”,那么redis则会针对那些需要申请内存的指令返回错误信息,比如SET、LPUSH等。
 但是对于无内存申请的指令,仍然会正常响应,比如GET等。如果你的redis是主redis(说明你的redis有从redis),那么在设置内存使用上限时,需要在系统中留出一些内存空间给同步队列缓存,只有在你设置的是“不移除”的情况下,才不用考虑这个因素。

移除key的策略

在这里插入图片描述

maxmemory-policy

 volatile-lru:使用LRU算法移除key,只对设置了过期时间的键;(最近最少使用)
 allkeys-lru:在所有集合key中,使用LRU算法移除key
 volatile-random:在过期集合中移除随机的key,只对设置了过期时间的键
 allkeys-random:在所有集合key中,移除随机的key
 volatile-ttl:移除那些TTL值最小的key,即那些最近要过期的key
 noeviction:不进行移除。针对写操作,只是返回错误信息

maxmemory-samples

 设置样本数量,LRU算法和最小TTL算法都并非是精确的算法,而是估算值,所以你可以设置样本的大小,redis默认会检查这么多个key并选择其中LRU的那个。
 一般设置3到7的数字,数值越小样本越不准确,但性能消耗越小。

发布订阅

订阅:
SUBSCRIBE channel1
发布:
publish channel1 hello 返回订阅者数量

bitmap

Redis提供了Bitmaps这个“数据类型”可以实现对位的操作:
(1) Bitmaps本身不是一种数据类型, 实际上它就是字符串(key-value) , 但是它可以对字符串的位进行操作。
(2) Bitmaps单独提供了一套命令, 所以在Redis中使用Bitmaps和使用字符串的方法不太相同。 可以把Bitmaps想象成一个以位为单位的数组, 数组的每个单元只能存储0和1, 数组的下标在Bitmaps中叫做偏移量。
(1)格式
setbit设置Bitmaps中某个偏移量的值(0或1)
*offset:偏移量从0开始

(2)实例
每个独立用户是否访问过网站存放在Bitmaps中, 将访问的用户记做1, 没有访问的用户记做0, 用偏移量作为用户的id。
设置键的第offset个位的值(从0算起) , 假设现在有20个用户,userid=1, 6, 11, 15, 19的用户对网站进行了访问, 那么当前Bitmaps初始化结果如图
在这里插入图片描述
在这里插入图片描述
2、getbit
(1)格式
getbit获取Bitmaps中某个偏移量的值
(2)实例
获取id=8的用户是否在2020-11-06这天访问过, 返回0说明没有访问过:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_41358574/article/details/120848812
今日推荐