业务需求中经常有需要用到计数器的场景:譬如一个手机号一天限制发送5条短信、一个接口一分钟限制多少请求、一个接口一天限制调用多少次等等。使用Redis的Incr自增命令可以轻松实现以上需求。以一个接口一天限制调用次数为例:
/**
* 是否拒绝服务
* @return
*/
private boolean denialOfService(String userId){
long count=JedisUtil.setIncr(DateUtil.getDate()+"&"+userId+"&"+"queryCarViolation", 86400);
if(count<=10){
return false;
}
return true;
}
/**
* 查询违章
* @param pla

在业务场景中,常需要使用计数器来限制接口调用次数,如手机号短信限制、接口频率控制等。本文通过Java利用Redis的Incr命令,详细介绍了如何构建分布式计数器。首先,在调用接口前检查计数器,若未超过限制则执行后续操作,否则进行拦截。同时提供了JedisUtil工具类的示例代码。
最低0.47元/天 解锁文章
4万+

被折叠的 条评论
为什么被折叠?



