Azure Redis缓存是否允许我将函数设置为在缓存中的某个键过期时可靠地触发?
答案 0 :(得分:2)
您可以使用Redis Pub/Sub和Redis Keyspace Notifications组合客户端,以使客户端在特定键发生事件或任何键发生特定事件时收到消息。然后,您可以使用pattern-matching subscriptions接收多个按键的消息。您还可以从单个客户端订阅多个频道;所有消息都包括发布到哪个频道,以便您的客户决定要做什么。
要在以foo
开头的任何键到期时收到消息,请执行以下操作:
notify-keyspace-events
配置值设置为Kx
。设置Azure值的步骤是here。 here定义了有关配置值架构的更多详细信息。PSUBSCRIBE '__keyspace@*__:foo*'
SET foo42 bar EX 5
"pmessage","__keyspace@*__:foo*","__keyspace@0__:foo42","expired"
要在任何密钥到期时接收消息,请执行以下操作:
notify-keyspace-events
的配置值设置为Ex
PSUBSCRIBE '__keyevent@*__:expired'
SET foo bar EX 5
"pmessage","__keyevent@*__:expired","__keyevent@0__:expired","foo"
为使客户快速开发和调试,我建议使用redis-cli或Redis console in the Azure Portal。
希望这会有所帮助。祝你好运!