码迷,mamicode.com
首页 > 其他好文 > 详细

Auzre微软云Redis后台StackExchange.Redis使用KeySpaceNotification实现缓存过期前操作/处理一些事件

时间:2016-12-19 21:21:33      阅读:413      评论:0      收藏:0      [点我收藏+]

标签:manager   val   not   nan   exchange   app   str   key   启动   

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实现缓存过期前操作/处理一些事件

标签:manager   val   not   nan   exchange   app   str   key   启动   

原文地址:http://www.cnblogs.com/mapley/p/6198850.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!