Redis configuration
Redis可以仅使用内建的默认配置启动,而不需要指定配置文件。但是,这种启动仅推荐用于测试和开发。
对于配置Redis恰当的方式是提供一个Redis配置文件,通常叫做redis.conf。redis.conf包含大量的指令,格式如下:
keyword argument1 argument2 ... argumentN
下面是一个配置指令的例子:
slaveof 127.0.0.1 6380
也可以使用带空格的字符串做为参数,但是要用双引号引起来,如下:
requirepass "hello world"
**IMPORT:**Redis指令配置详细可看3.0配置。
通过命令行传递参数
从Redis2.6开始,可以直接通过命令行传递redis配置参数,这对于测试非常有用。以下是以端口6380开启一个作为运行在127.0.0.1主机6379端口的实例的slave的Redis实例:
./redis-server --port 6380 --slaveof 127.0.0.1 6379
注:通过命令行传递参数的格式同redis.conf文件中类似,区别就在于要在关键字前加前缀“–”。
在Redis运行期间改变Redis配置
可以在Redis运行期间重新配置Redis,无须停止Redis服务和重启Redis服务,或者使用指定的CONFIG SET命令和CONFIG GET命令编程式查询当前配置。
并不是所有的配置指令都支持运行期间更改,但大部分都支持。详情参看CONFIG SET命令和CONFIG GET命令。
注:运行期间修改的配置对于redis.conf是无影响的,所以下次启动时还将是老的配置。
确保你使用 CONFIG SET设置的指令也修改到了redis.conf中去了。你可以手工做这件事,或者你可以使用CONFIG REWRITE命令(自Redis2.8开始支持)。CONFIG REWRITE命令用于使Redis自动浏览你的redis.conf文件,并且修改配置文件中与当前运行状态下不同配置的地方。当然,你配置文件中的注释是会被保留的。
将Redis做为缓存配置
如果你计划作为缓存(每个键都有一个过期设置)使用Redis,你可能会考虑使用如下配置:
maxmemory 2mb
maxmemory-policy allkeys-lru
使用此种配置,就不需要应用程序再使用EXPIRE命令为keys设置存活时间,因为只要我们达到2mb内存限制,都会使用一个近似的LRU算法驱逐所有的keys。
可以这样说,这种配置下Redis扮演的角色同memcached类似。查看更多关于使用Redis作LRU缓存。
</article>