访问频率以及次数控制

前言

1、在调用别人接口的时候,给我提示了下请求太过频繁,所以我添加了频率控制

2、在别人访问我们系统的时候,我们会对他访问次数进行限制

1、频率控制


try {

if(stringRedisTemplate.hasKey("taobao:esmite:freq")){ //100毫秒
          TimeUnit.MILLISECONDS.sleep(100L);//底层还是Thread.sleep(ms, ns);
      }
      //获取排重数据
      model = shenJianShouService.getCrawlerData(reqData);
      pageInfoBean = model.getResult().getPage_info();
      if(pageInfoBean.getEnd_cursor()!=0){
          reqData.setEndCursorId( Long.valueOf(pageInfoBean.getEnd_cursor())) ;
      }
  }catch (Exception e){
      ExceptionLogUtils.log(e,this.getClass() );
  } finally {
      stringRedisTemplate.opsForValue().set("taobao:esmite:freq", "1", 100, TimeUnit.MILLISECONDS);
  }
            

2、访问次数控制

观察aop自定义注解中,前面的文章中有,或者参考代码





感兴趣的,欢迎添加博主微信,

哈,博主很乐意和各路好友交流,如果满意,请打赏博主任意金额,感兴趣的在微信转账的时候,备注您的微信或者其他联系方式。添加博主微信哦。


请下方留言吧。可与博主自由讨论哦

微信 微信公众号 支付宝
微信 微信公众号 支付宝
posted @ 2019-01-22 18:19  HealerJean  阅读(141)  评论(0编辑  收藏  举报