首页 > 其他 > 详细

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

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

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

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

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!