我在Windows 2008服务器上使用了MsOpenTech版本的Redis。我通过RedisWatcher服务安装了here所描述的,这很好 - 服务器正在响应,数据进出很好,运行多个实例等 - 非常好。
我有一个问题 - 我正在尝试使用redis.conf
文件来设置一些默认配置; .conf
文件存储在与redis-server.exe
相同的目录中,即c:\redis\bin
配置更改本身是直截了当的,我只是将超时设置为20秒,因此:
timeout 20
但是当我运行watcher服务时,通过命令行连接到服务器并执行config get timeout
,它返回0
我在尝试更新配置后尝试重启watcher服务。我已经尝试直接在服务的watcher.conf文件中传递超时值,比如
cmdparms --timeout 20
这不起作用。我在第二个实例中尝试了相同的结果,结果相同。
有趣的是,如果我在观察者中启动redis服务器的第二个实例,那么:
{
workingdir c:\redis\inst2
runmode hidden
saveout 1
cmdparms --port 6380
}
这是有效的,尊重--port
参数并在端口6380启动第二个实例。虽然如上所述,将--timeout
参数或配置文件参数传递给此实例也不起作用。
通过命令行设置配置工作正常,即连接到redis时:
config set timeout 20
这会按预期设置超时,但显然不会将设置保持在该会话之外。这是redis的2.6版本,我没有访问config rewrite命令的权限,因此无法绕过它。
欢迎任何想法。
答案 0 :(得分:0)
最后答案很简单。重新启动RedisWatcher
服务不会重新启动redis-server.exe
进程。
手动停止此过程并通过观察程序重新启动,可以获取配置更改。