首页 > 代码库 > Auzre微软云Redis后台StackExchange.Redis使用KeySpaceNotification实现缓存过期前操作/处理一些事件
Auzre微软云Redis后台StackExchange.Redis使用KeySpaceNotification实现缓存过期前操作/处理一些事件
https://github.com/rustd/RedisSamples/blob/master/HelloWorld/KeySpaceNotifications.cs
懂的可以直接看上面官方提供的demo代码就明白怎么用了
Auzre上面需要设置keyspace notifications with "Kxg"
然后在项目启动的时候订阅,比如使用的是Nancy,就在Boostrapper启动里加上订阅程序
个人示例代码:
var db = CacheManager.Connection.GetDatabase(); var subscriber = CacheManager.Connection.GetSubscriber(); subscriber.Subscribe("__keyspace@0__:*", async (channel, value) => { if (value.Equals("expired")) await CacheExpire.keyExpire(channel); });
这里我只做了缓存过期的处理,所以只判断了expired
CacheExpire.keyExpire(channel)里面,将channel传过去,是为了得到当前过期的key,从而进行后续处理
Auzre微软云Redis后台StackExchange.Redis使用KeySpaceNotification实现缓存过期前操作/处理一些事件
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。