在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

java操作redis中如何使用expire模拟指定时间段内限制ip访问的次数

125次阅读
没有评论

共计 2369 个字符,预计需要花费 6 分钟才能阅读完成。

行业资讯    
服务器    
云计算    
java 操作 redis 中如何使用 expire 模拟指定时间段内限制 ip 访问的次数

java 操作 redis 中如何使用 expire 模拟指定时间段内限制 ip 访问的次数,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面丸趣 TV 小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

    首先加入 maven 依赖,使用 JUinit 做单元测试。

dependency   
  groupId redis.clients /groupId 
 artifactId jedis /artifactId 
 version 2.7.0 /version 
  /dependency 
  
  dependency 
  groupId junit /groupId 
  artifactId junit /artifactId 
  version 3.8.1 /version 
  scope test /scope 
  /dependency

    redisutil 类,创建一个线程池,可以返回 redis 连接资源以及释放资源

/**
 * redis 工具类,从 redis 链接池中获取一个链接资源
 * @author Hades
 * time:2015 年 12 月 14 日
 */
public class RedisUtils {
 // 定义连接池
 public static JedisPool pool = null;
  *  获取链接资源
  * @return
  */
 public static synchronized Jedis getJedis() {if(pool==null){JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
 jedisPoolConfig.setMaxTotal(100);// 最大连接数
 jedisPoolConfig.setMaxIdle(10);
 jedisPoolConfig.setMaxWaitMillis(1000);// 类似于超时时间
 jedisPoolConfig.setTestOnBorrow(true);
 pool = new JedisPool(jedisPoolConfig, 192.168.57.133 ,6379);// 创建连接池
 Jedis jedis = pool.getResource();
 return jedis;
  *  释放链接资源
  * @param jedis
  */
 public static void returnJedis(Jedis jedis) {pool.returnResourceObject(jedis);
 }

    redis 客户端类,使用的是 juinit 做单元测试哈

/**
 * redis 测试类
 * @author Hades
 *
 */
public class RedisTest {static Jedis jedis =RedisUtils.getJedis();
 @Test
 public void test3() throws Exception {
 String ip = 192.168.57.2 // 访问的 ip
 // 测试
 for (int i = 0; i   20; i++) {boolean flag = testLogin(ip);
 System.out.println(flag);
  *  模拟限制 ip 指定时间段内访问次数
  * @param ip
  * @return
  */
 public boolean testLogin(String ip) {String value = jedis.get(ip);
 if(value==null){
 jedis.set(ip,  1 
 jedis.expire(ip, 60);// 设置过期时间 60 秒
 return true;
 }else{int parseInt = Integer.parseInt(value);
 //60 秒内访问超过 10 次,就禁止访问
 if(parseInt 10){
 System.out.println( 访问受限!!!!return false;
 jedis.incr(ip);
 return true;
 } 
  *  不使用管道   向 jedis 插入一万条数据消耗时间:3184
  */
 @Test
 public void test2() throws Exception{
 // TODO Auto-generated method stub
 long start = System.currentTimeMillis();
 for (int i = 0; i   10000; i++) {
 jedis.set( a +i, i+ 
 jedis.expire(a +i, 60);
 System.out.println(System.currentTimeMillis()-start);
  *  使用管道命令批量导入数据   所需时间:204
  * @throws Exception
  */
 @Test
 public void test4() throws Exception {long start = System.currentTimeMillis();
 Pipeline pipelined = jedis.pipelined();
 for (int i = 0; i   10000; i++) {
 pipelined.set( a +i, i+ 
 pipelined.expire(a +i, 60);
 pipelined.sync();
 System.out.println(System.currentTimeMillis()-start);
}

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注丸趣 TV 行业资讯频道,感谢您对丸趣 TV 的支持。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-25发表,共计2369字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 亚洲国产成人99精品激情在线 | 亚洲男人天堂2018 | 48沈阳熟女高潮嗷嗷叫 | 亚洲国产精品成人综合久久久 | 毛片免费在线视频 | 日本人妻丰满熟妇久久久久久 | 欧美一级淫片a免费视频 | 一级国产在线观看高清 | 国产亚洲欧美另类久久久 | 99久久人人爽亚洲精品美女 | 午夜成人在线视频 | 亚洲欧美乱日韩乱国产 | 欧美日本亚洲国产一区二区 | 亚洲国产精品18久久久久久 | a毛片在线播放 | 国精产品一区二区三区有限公司 | 久久九九国产精品怡红院 | 免费无码高潮流白浆视频 | 深夜免费看片 | 中文字幕乱码在线观看 | 亚洲欧美久久精品一区 | 看免费毛片天天看 | 免费国产成人高清在线观看视频 | 一个人免费观看www视频在线 | 国产亚洲精品观看91在线 | 日本大尺度吃奶呻吟视频 | 亚洲第一在线综合网站 | 久久精品中文字幕免费 | 久久99热久久国产精品 | 亚洲国产一区在线 | 欧美成视频无需播放器 | 婷婷五月婷婷五月 | 亚洲av无码兔费综合 | 精品国产精品久久一区免费式 | 美女动作一级毛片 | 2019国产精品青青草原 | 国产成人隶青精品999视频 | 99精品热6080yy久久 | 久久这里只有精品9 | 草草免费| 久久dvd|