博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Auzre微软云Redis后台StackExchange.Redis使用KeySpaceNotification实现缓存过期前操作/处理一些事件...
阅读量:5035 次
发布时间:2019-06-12

本文共 684 字,大约阅读时间需要 2 分钟。

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,从而进行后续处理

转载于:https://www.cnblogs.com/mapley/p/6198850.html

你可能感兴趣的文章
ISCC2019-REV3
查看>>
svn安装教程
查看>>
【LeetCode & 剑指offer刷题】动态规划与贪婪法题11:121. Best Time to Buy and Sell Stock(系列)...
查看>>
C和指针 第十章 结构和联合 习题
查看>>
对给定的字符串(只包含'z','o','j'三种字符),判断他是否能AC。
查看>>
双向循环链表
查看>>
Iterator和for...of
查看>>
jupyter notebook 安装代码提示功能
查看>>
状压DP概念 及例题(洛谷 P1896 互不侵犯)
查看>>
java 复习
查看>>
【心情】此时此刻。
查看>>
【题解】 CF242E XOR on Segment
查看>>
maven使用内嵌tomcat7
查看>>
2017.10.9 java笔记
查看>>
gcolor2-拾色器
查看>>
【转】Appium如何定位安卓APP元素
查看>>
WPF用流的方式上传/显示/下载图片文件(保存在数据库)
查看>>
wenbao与右键菜单
查看>>
mysql 常用基准测试工具
查看>>
Beta冲刺第一天
查看>>