gpt4 book ai didi

ruby-on-rails - 使用 rails 缓存时使用 rails 处理 redis maxmemory 情况

转载 作者:可可西里 更新时间:2023-11-01 11:03:06 30 4
gpt4 key购买 nike

当 redis 达到“maxmemory”条件时,它会让客户端进行读取,而不是写入。

这当然会导致 fatal error ...有没有办法让 Rails 处理缓存读取或写入错误,所以如果缓存发生问题(可用性、读取、写入等),它将继续就像缓存设置为“关闭”一样运行?

最佳答案

当 Redis 填满其内存时,您可以告诉它遵守不同的行为。

# volatile-lru -> remove the key with an expire set using an LRU algorithm
# allkeys-lru -> remove any key accordingly to the LRU algorithm
# volatile-random -> remove a random key with an expire set
# allkeys->random -> remove a random key, any key
# volatile-ttl -> remove the key with the nearest expire time (minor TTL)
# noeviction -> don't expire at all, just return an error on write operations

默认是

# maxmemory-policy volatile-lru

也许最好的选择是“volatile-ttl”,并确保所有缓存都包含 :expires_in 选项。

我不是专家,也没有做过这件事。这只是基于我目前对 redis 和 rails 的理解。

关于ruby-on-rails - 使用 rails 缓存时使用 rails 处理 redis maxmemory 情况,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9471684/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com