我们在ELK堆栈中使用Redis缓冲系统和Elasticsearch之间的消息。这些消息由自定义log4j-appender将其推入redis,并由logstash弹出。
现在出现了一个问题:如果redis队列已满(因为Elasticsearch没有运行),则redis切换到模式时不再允许持久更改。这是有道理的,但是从redis中弹出消息(例如ES再次上升)将减少Redis中队列的大小。
在队列已满的情况下,是否有配置redis允许blpop的选项?
向本杰明问好
发布于 2015-12-16 09:05:48
来自redis.conf:
默认情况下,如果启用了RDB快照(至少一个保存点),并且最新的后台保存失败,Redis将停止接受写入。这将使用户意识到(以一种艰难的方式)数据没有正确地保存在磁盘上,否则很可能没有人会注意到,并且会发生一些灾难。
在您的情况下,您应该禁用此选项:
config set stop-writes-on-bgsave-error no更改此选项后,不要忘记重新启动redis。
https://stackoverflow.com/questions/34307670
复制相似问题