gpt4 book ai didi

redis - StackExchange.Redis - 禁止使用 EVALSHA?

转载 作者:IT王子 更新时间:2023-10-29 06:02:01 26 4
gpt4 key购买 nike

在停止并重新启动 Redis 服务器时,通过 Redis 发送内容会引发以下错误:“StackExchange.Redis.RedisServerException:NOSCRIPT 没有匹配的脚本。请使用 EVAL。”

我的理解是当服务器不记得带有 SHA1 摘要的脚本时会发生此错误。我猜服务器会在重启时删除缓存的脚本 - 这应该如何处理?

最佳答案

库会在内部检测到此错误并刷新已知良好脚本的本地缓存,因此库会自愈,下次调用脚本时会发出 SCRIPT LOAD 自动。如果您使用的是 *Async API,它不会自动重新发出此命令,因为无法理解调用者想要发生什么以及是否有相关命令已经在运行中。但是,当使用非 *Async API 时,它知道这不是问题,因此它会自动为您重新发出命令而不显示错误。

重新启动 redis 服务器是一个相当罕见的事件,但是:我怀疑它可以合理地更改为在断开连接时刷新脚本缓存。


更新:我现在track changes to the run-id ,它唯一标识服务器运行(因此重新启动)。如果此更改,则刷新脚本缓存。

关于redis - StackExchange.Redis - 禁止使用 EVALSHA?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24152091/

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