面试题之redis实现限制1小时内每用户Id最多只能登录5次
2016-02-22 10:30
2286 查看
面试题之redis实现限制1小时内每用户Id最多只能登录5次
/// <summary> /// redis实现限制1小时内每用户Id最多只能登录5次 /// </summary> /// <param name="userid">用户id</param> public static void CheckLogin(string userid) { var listCount = redisClient.GetListCount(userid); if (listCount < 5) { redisClient.AddItemToList(userid, DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); } else { var now = DateTime.Now; var first = Convert.ToDateTime(redisClient.GetItemFromList(userid, 0)); var tem = (now - first).TotalHours; if (tem < 1) { throw new Exception("登录过于频繁,请稍后重试!"); } else { redisClient.RemoveStartFromList(userid); redisClient.AddItemToList(userid, now.ToString("yyyy-MM-dd HH:mm:ss")); } } //调用登录即可 }
相关文章推荐
- 阿里云、青云、腾讯云服务器,Mysql数据库,Redis等产品性能对比
- .Net下Redis使用注意事项
- 3. redis的超时,事务,watch
- redis 学习
- golang--Redis最佳的Go语言驱动
- redis--使用redis-rdb-tools分析redis的内存使用情况
- 在java中使用redis
- Redis替代文件存储session
- C++自制Redis 数据库(十二) 初级存储引擎已经测试完毕
- Redis消息队列发布微博
- spring aop自定义redis缓存实现
- Redis源码解析:07压缩列表
- 2. redis的数据类型
- redis密码设置、访问权限控制等安全设置
- 1. redis简介
- Redis性能测试
- 使用Tomcat+Redis来实现集群部署中的Session共享问题
- zabbix 自动发现监控redis
- centos上安装及配置redis cluster
- Redis教程(十二):服务器管理命令总结