redis配置文件 Record

本文详细解析了Redis配置文件的各项参数设置,包括如何实现远程访问、设置密码增强安全性、调整客户端最大连接数、理解保护模式作用、掌握快照和持久化策略、了解AOF配置及同步选项等,帮助读者全面掌握Redis的配置与优化。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

(1)

进入redis目录下 的  配置文件

编辑

(2)

默认是127.0.0.1,只能当前服务器内网访问

若要用来远程测试 (外网访问)     改为如图即可。

但不安全!  所以需要设置密码!若需要保证安全的话 , 则需要设置较复杂的密码!

(3)

requirepass kevin  ------- 设置kevin为密码!

maxclients   ----- 客户端最大连接数为1w!

(4)

端口号默认6379

protected-mode  yes保证安全性

注意:如果要外网访问,无需改为no!亲测!!

(5)

最大超时时间   5s

 

(6)快照

持久化   --  在规定时间内   执行多少次操作   会进行一次持久化到 .rdb  .aof文件

redis是内存数据库   数据断电即失!!!

save 900 1                    #如果900s内至少有一个key进行修改,我们即进行持久化。

save  time   keyNum    #如果time秒内至少有keyNum个key进行修改,我们即进行持久化。

 

(7)其他

stop-write-on-bgsave-error  yes    #持久化若出错  是否继续执行(默认yes)

rdbcompresssion yes     #是否压缩压缩rdb文件   但需要消耗一些cpu资源

rdbchecksum yes         #保存rdb文件时    进行错误的检查校验

 

(8)注意:

修改配置文件后

一定要重启redis服务!

 

(9)安全策略

config set requirepass "123456"    设置密码

auth  123456    使用密码登录

maxmemory <bytes>    redis配置最大的内存量

 

(10)key淘汰策略

mexmemory-policy   xxx     内存达到上限之后的处理策略

(11)append only模式 aof配置

appendonly no    默认开启rdb。

appendfilename “xxx”

 

appendsync always     每次修改就同步  消耗性能

appendsync eveysec    每s执行一次同步,可能会丢失这1s的数据!

appendsync no         不执行   速度最快

 

### 如何在Redis中使用Bitmap #### Bitmap简介 Bitmap是一种高效的数据结构,用于处理位级别的操作。通过设置和获取特定位置的比特值来实现高效的内存管理和快速查询。 #### 基本命令介绍 为了有效利用Bitmap,在Redis中有几个核心命令可以用来操作这些位图: - **SETBIT key offset value**: 设置键`key`中的偏移量`offset`处的位为指定的布尔值`value`(0 或 1)[^1]。 - **GETBIT key offset**: 获取键`key`中给定偏移量`offset`上的位值[^1]。 - **BITCOUNT key [start end]**: 计算位于`key`所指向字符串内被设定位的数量(即计算'1'的数量),可选参数[start end]表示范围。 - **BITOP operation destKey srcKey [srcKey ...]**: 执行按位逻辑运算(`AND`, `OR`, `XOR`)并将结果存储到目标键`destKey`中;源键可以是一个或多个。 #### 实际应用案例 假设有一个场景需要记录某天有多少用户访问过网站,并且要知道具体哪些用户的ID曾经登录过,则可以通过以下方式使用BitMap: ```python import redis r = redis.Redis(host='localhost', port=6379, db=0) def record_user_login(user_id): day_key = f"user_logins:{datetime.now().strftime('%Y-%m-%d')}" r.setbit(day_key, user_id, 1) def check_if_logged_in_today(user_id): day_key = f"user_logins:{datetime.now().strftime('%Y-%m-%d')}" return bool(r.getbit(day_key, user_id)) ``` 此代码片段展示了如何基于日期创建不同的键名以便于区分不同日子的情况,以及怎样标记和检查单个用户的登陆状态。 #### 关联配置文件说明 对于更复杂的部署环境,可能涉及到跨服务器共享相同的配置项等问题时,可以在redis.conf里加入INCLUDE指令引入外部配置文件[^2]。这有助于维护统一的标准模板并允许针对每台机器做个性化调整而不必修改主配置文档。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值