Auzre微软云Redis后台StackExchange.Redis使用KeySpaceNotification实现缓存过期前操作/处理一些事件
Posted 星辰Mapley
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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("[email protected]__:*", async (channel, value) => { if (value.Equals("expired")) await CacheExpire.keyExpire(channel); });
这里我只做了缓存过期的处理,所以只判断了expired
CacheExpire.keyExpire(channel)里面,将channel传过去,是为了得到当前过期的key,从而进行后续处理
以上是关于Auzre微软云Redis后台StackExchange.Redis使用KeySpaceNotification实现缓存过期前操作/处理一些事件的主要内容,如果未能解决你的问题,请参考以下文章
Zabbix : 通过Zabbix官方模板监控微软云Azure上多台Redis实例