MemCache 安全使用原则(自己整理,仅供参考)
2024-09-03 23:44:53
// 触发器:作用是检查缓存时否可用(不用add做触发器),避免缓存不可用时add返回false按非首次登陆处理,导致不能增加成长值。
memCachedClient.get(memCacheKey);
firstLogon = memCachedClient.add(memCacheKey, "0", new Date(10*24*60*60*1000));
// 如果存入缓存,则数据库二次校验;未存入缓存,则缓存中已存在
if(firstLogon){
// 存至表
try{
mmsMemcachedInfoMapper.insert(mmsMemcachedInfo);
}catch(DuplicateKeyException e){
firstLogon = false;
}
}
使用场景:通过缓存判断是否首次
1. 能add到缓存的一定要插入表(是首次就是双重校验)
2. 要保证(见3)add返回false则是因为缓存中已存在(节点停止服务时也返回false需要排除这种情况)
3. MemCache集群(多节点),使用get触发坏节点,保证add可以正常使用(除非所有节点都停止服务)
最新文章
- [测试] Firemonkey Android 照相自订分辨率测试
- PHP非阻塞模式 (转自 尘缘)
- cocos 帧率测试
- 《javascript高级程序设计》第六章 Object Creation VS Inheritance
- 如何在Quagga BGP路由器中设置IPv6的BGP对等体和过滤
- tornado框架之路一
- jQuery遍历对象、数组、集合实例
- Jacob - Outlook
- HTML CSS简介与图片映射
- 转:Node.js异步处理CPU密集型任务的新思路
- Java得到年在一个季度的错误的第一天
- OAuth流程
- 【转载】BAT 批处理脚本教程
- HALCON不支持的设备中,获取图像
- jupyter notebook安装、登录
- IOS中多线程的总结
- ueditor 百度编辑器 粘贴的table表格样式边线
- linu下未编译的mysql安装包
- iOS 【终极方案】精准获取webView内容高度,自适应高度
- 虚拟机VM下CentOS7部署WASND9+HTTP9