Redis 常用配置项
配置项 | 描述 |
---|---|
daemonize < yes | no > | 是否以后台 daemon 方式运行 |
pidfile < *.pid > | pid 文件位置,daemonize 为 yes 时才起作用 |
port < port > | 监听的端口号(默认 6379) |
timeout < seconds > | 请求超时时间(单位:秒) |
loglevel < debug | verbose | notice | warning > | log 信息级别,选项有 debug、verbose、notice、warning |
logfile < filename > | log 文件位置(默认 stdout) |
database < number > | 开启数据库的数量 |
save < seconds > < change > | 保存快照的频率,在一定时间内执行一定数量的写操作时, 自动保存快照。可设置多个条件 |
slaveof < masterip > < masterport > | 当本机为从服务时,设置主机服务的 IP 及端口 |
masterauth < master-password > | 当本机为从服务时,设置主机服务的连接密码 |
requirepass | 连接密码 |
maxclients < number > | 最大客户端连接,0 为不限制 |
maxmemory < bytes > | 设置最大内存,达到最大内存设置后,Redis 先尝试清除已到期 或者即将到期的 key, 当此方法处理后,仍到达最大内存 设置,将无法再进行写入操作 |
rdbcompression < yes | no > | 是否使用压缩 |
dbfilename < *.rdb > | 数据快照文件名(只是文件名,不包括目录) |
dir < directory > | 数据快照保存的目录 |
appendonly < yes | no > | 是否开启 appendonly log, 如果开启每次写操作记一条 log,会提高 数据抗风险能力,但影响效率 |
appendfilename < *.aof > | 更新日志文件名 |
appendfsync < always | everysec | no > | appendonly log 如何同步到磁盘 always:每次写都强制调用 fsync; everysec: 每秒启动一次 fsync; no: 不调用 fsync 等待系统自己同步; |
vm-enabled < yes | no > | 是否启用虚拟内存 |
vm-swap-file < *.swap > | 交换分区文件(启动虚拟内存时使用) |
vm-max-memory < number > | 将所有大于 vm-max-memory 的数据存入虚拟内存, 无论 vm-max-memory 设置多小,所有索引数据都是内存存储的 ( Redis 的所以数据就是 key ),也就是说,当 vm-max-memory 设置为 0 时,其实是所有 value 都存在于磁盘上 |
vm-page-size < bytes > | SWAP 文件页大小(根据存储的值设置,单位:byte) |
vm-pages < number > | 交换分区文件中内存页的数量 |
vm-max-threads < number > | 对 SWAP 文件操作的最大线程数(最好为 CPU 的数量) |
例如:希望以 damon 方式运行 Redis, 应该把 daemonize 配置项修改为 yes;
希望请求不能超过 5 秒,应该把 timeout 配置项修改为 5 。