首页/数据/Redis 进阶速查/NOSCRIPT:脚本缓存未命中
性能与排障129 条

NOSCRIPT:脚本缓存未命中

EVALSHA 的脚本哈希不在缓存(实例重启或 SCRIPT FLUSH 后)时报 NOSCRIPT;标准处理是用 EVAL 回退重新加载一次。

Redis 进阶速查数据更新于 2026-10-12
场景重启/清缓存后调用 EVALSHA
处理回退 EVAL 重新写入脚本
治理客户端封装自动回退

示例

示例
redis-cli SCRIPT EXISTS script-sha
redis-cli SCRIPT LOAD "return 1"
主流客户端库自带回退逻辑,自研客户端记得实现。

易错点

  • 自研客户端无回退逻辑,实例重启后调用全失败
  • 频繁 SCRIPT FLUSH 打断在跑的业务脚本调用

数据来源与参考

  • Redis 官方文档:EVALSHA 与脚本缓存
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌