1、redis基本参数
redis的配置文件中的常见参数如下:
daemonize |
是否以后台进程运行,默认为no,一般需要改为yes |
pidfile |
如以后台进程运行,则需指定一个pid,默认为/var/run/redis.pid |
bind |
绑定主机IP,默认值为127.0.0.1 |
port |
监听端口,默认为6379 |
timeout |
超时时间,默认为300(秒),由于应用中使用了连接池,所以这里建议设置为0,表示无限制 |
loglevel |
日志记录等级,有4个可选值,debug,verbose(默认值),notice,warning |
logfile |
日志文件 |
databases |
可用数据库数,默认值为16,默认数据库为0 |
save <seconds> <changes> |
指出在多长时间内,有多少次更新操作,就将数据同步到数据文件。这个可以多个条件配合,比如默认配置文件中的设置,就设置了三个条件,如果不希望使用snapshot方式,把所有的save配置全部注释掉即可 |
save 900 1 |
900秒(15分钟)内至少有1个key被改变 |
rdbcompression |
存储至本地数据库时是否压缩数据,默认为yes |
dbfilename |
默认值为dump.rdb |
dir |
本地数据库存放路径,默认值为 ./ |
slaveof <masterip> <masterport> |
当本机为从服务时,设置主服务的IP及端口(注释) |
requirepass |
连接密码(注释) |
maxclients |
最大客户端连接数,默认不限制(注释) |
maxmemory <bytes> |
设置最大内存,达到最大内存设置后,Redis会先尝试清除已到期或即将到期的Key,当此方法处理后,任到达最大内存设置,将无法再进行写入操作。(注释) |
appendonly |
是否在每次更新操作后进行日志记录,如果不开启,可能会在断电时导致一段时间内的数据丢失。因为redis本身同步数据文件是按上面save条件来同步的,所以有的数据会在一段时间内只存在于内存中。默认值为no |
appendfilename |
更新日志文件名,默认值为appendonly.aof(注释) |
appendfsync |
更新日志条件,共有3个可选值。no表示等操作系统进行数据缓存同步到磁盘,always表示每次更新操作后手动调用fsync()将数据写到磁盘,everysec表示每秒同步一次(默认值) |
vm-enabled |
是否使用虚拟内存,默认值为no,强烈不建议开启 |
vm-swap-file |
虚拟内存文件路径,默认值为/tmp/redis.swap,不可多个Redis实例共享 |
vm-max-memory |
将所有大于vm-max-memory的数据存入虚拟内存,无论vm-max-memory设置多小,所有索引数据都是内存存储的(Redis的索引数据 就是keys),也就是说,当vm-max-memory设置为0的时候,其实是所有value都存在于磁盘。默认值为0 |
几个值得注意的参数:
1、daemonize 是否在后台运行,这里我们要设置为yes,表示在后台运行,否则ctrl+c服务就停了
2、port 我们设置为自己想要的就可以,多个实例需要设置多个配置文件
3、timeout 如果应用中使用了连接池,最好设置为0,表示不使用服务器自动断开的功能,否则容易出现java.net.SocketTimeoutException: Read timed out 或者是 It seems like server has closed the connection 这样的异常,当然应用中千万要控制住连接数,打开的连接需要记得关闭
4、save 900 1 这种snapshot建议放到从库操作,需要注意的是这个snapshot是以fork一个进程的形式,然后在子进程里dump内存的,如果主进程还在进行写操作的话,最坏情况下需要占用一倍的空间,比如主进程用了15G空间,那么在fork的时候就有可能需要30G的空间来dump内存,所以预留内存是非常重要的,在一台机器上运行多个实例使每个实例所占用的内存尽量少也是一个解决办法(其实不dump的话,我还没见redis服务器挂过...除非硬盘挂掉...咱们不还有从库么,哈哈)
5、maxmemory 这个可以根据服务器硬件来设置,怎么说呢,还是值得设置一下的,对内存的监控是redis运维的最重要的部分
6、VM相关功能,坚决关闭即可,那玩意连作者自己都知道写的渣
7、AOF,没用过,不评价
2、多端口运行的配置
redis是单进程的,所以咱得根据CPU的数目,确定究竟该运行几个实例,这样才能最好的发挥性能优势,比如服务器是8core的,那最好能够运行8个以上的实例,这里只以第一个作为举例
1、假设redis的安装目录在/home/app/redis/下面,即这个目录下包含了redis-benchmark/redis-cli/redis-server这几个可执行文件,现在在下面新建一个servers的文件夹,存放所有的实例
mkdir -p /home/app/redis/servers/0/
mkdir -p /home/app/redis/servers/0/conf
mkdir -p /home/app/redis/servers/0/data
mkdir -p /home/app/redis/servers/0/run
mkdir -p /home/app/redis/servers/0/logs
2、然后我们需要拷贝一份配置文件到该实例的路径下
cp redis.conf /home/app/redis/servers/0/conf
3、修改配置文件中的下列内容
pidfile /home/app/redis/servers/0/run/redis.pid
port 10379
logfile /home/app/redis/servers/0/logs/stdout.log
dbfilename /home/app/redis/servers/0/data/dump.rdb
3、redis启动
配置好了之后可以启动了,还是以刚才的路径为例
./redis-server /home/app/redis/servers/0/conf/redis.conf
4、redis停止
停止redis的命令如下
./redis-cli -p 10379 shutdown
<!--EndFragment-->
分享到:
相关推荐
redis.conf Redis配置文件 下载 redis.conf 配置详解 Redis配置文件redis.conf 详解1.基本配置内存单位的表示# 1k => 1000 bytes# ...Redis 的详细介绍Redis 的下载地址
redis6.2.6 redis.conf配置文件
redis配置文件redis.conf
redis.conf配置文件下载
redis4.0的配置文件redis.conf
redis.conf 6.0版本配置文件
redis-6.0.8 redis.conf配置文件
Redis:6.2.7版本的配置文件redis.conf
...这个扩展允许开发者充分利用Redis的功能...正确配置和使用`php_redis.dll`文件可以让你充分利用Redis的强大功能,提升应用的性能和响应速度。确保与PHP版本和系统架构兼容,以及正确配置,是成功集成Redis扩展的基础。
首先,`redis.properties`文件是Spring与Redis连接的关键配置文件。在该文件中,通常会包含以下内容: 1. Redis服务器的主机名或IP地址:`redis.host=localhost` 2. Redis服务器的端口号:`redis.port=6379` 3. ...
redis官方docker镜像时没有redis.conf文件的,如果想设置redis以daemon方式启动,需要将这个配置文件挂载进容器中,以这个配置文件启动。
### Redis配置文件详解 #### 基本设置 1. **内存单位定义**:Redis配置文件支持使用常见的单位表示内存大小。...这些基本配置项是管理Redis实例的关键要素,正确地设置它们可以确保Redis服务稳定高效地运行。
在运行Docker+Redis最新版后,运行redis-cli需要的redis.config文件
4. **安装和配置**:在Windows环境下,将"redis.dll"文件复制到PHP的`ext`目录,然后在`php.ini`配置文件中添加`extension=redis.dll`,重启Web服务器即可启用扩展。在Linux环境下,通常通过PECL安装,命令行输入`...
redis.conf 2.6版本配置文件
最近需要在C#中使用Redis,ServiceStack.Redis的4.0版本已开始收费,之前版本Bug较多。建议使用StackExchange.Redis,支持异步的客户端,据说性能比ServiceStack.Redis更好,而且据说Stack Overflow也是使用的这个...
redis6.2.4配置文件 redis.conf .
2. **PHP配置**:在启用`php_redis.dll`之后,可能还需要设置其他配置选项,例如`redis.default.host`和`redis.default.port`来指定Redis服务器的地址和端口。 3. **错误排查**:如果在加载`php_redis.dll`时遇到...
redis.conf 5.0版本配置文件
配置文件`redis.conf`可以自定义Redis实例的行为,例如端口号、数据库数量、日志级别等。确保正确配置后,Redis将准备好接收来自PHP的连接请求。 接下来,php_redis-2.2.7-5.6-nts-vc11-x86.zip包含的是PHP的Redis...