我正在使用redis并在一定的时间间隔内将数据保存到磁盘。我看到通常的读和写时间是.2毫秒的顺序,但我很少看到30毫秒的顺序。我读取redis叉将数据写入磁盘的后台进程,在相同的(redis使用单个线程服务所有请求)线程上发生分叉,该线程为读写请求服务。如果这是真的,我想要一个解决方案,这样持久性不会增加读和写请求的延迟。
发布于 2014-03-27 22:16:20
如果您发出一个BGSAVE,后台保存将分叉。当然,操作系统需要有一个独立的CPU线程,这样才不会影响Redis服务器的主线程。如果您在save中配置redis.conf,那么BGSAVE基本上就是所发生的事情。我会将其配置为off,并在故障排除时手动发出BGSAVE。
如果您发出一个SAVE,则保存将是同步的,其他客户端将不得不等待。
另见这里。您可能希望完全跳过rdb快照,并依赖于AOF。
还请参阅我对敏感数据的评论:所以评论。有许多方法可以确保您的数据是安全的。磁盘持久化只是其中之一。
希望这有帮助,TW
https://stackoverflow.com/questions/22690788
复制相似问题