如果搜索的键不存在,我如何覆盖方法 GET 或编写一个将在服务器端执行的新函数返回另一个键值?
示例:
如果关键字“word_1 word_2 word_3 word_4”不存在则搜索关键字“word_1 word_2 word_3”,如果关键字“word_1 word_2 word_3”不存在则搜索关键字“word_1 word_2”,如果关键字“word_1 word_2”不存在则搜索该关键字“word_1”。 此递归搜索必须在服务器端进行(为了速度)。
最佳答案
此功能并未内置于 Redis 中,但如果您真的希望在服务器上完成此操作,您可以使用 Lua 脚本为您完成此操作。
如果您不想这样做,另一种方法是生成可能的搜索键,在您的示例中是
word_1 word_2 word_3 word_4
word_1 word_2 word_3
word_1 word_2
word_1
然后发出 MGET一次获取所有 key 。在您的应用程序逻辑中,您可以遍历结果以获取第一个具有值的结果
关于Redis 预 GET 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34084361/