制限のRedis

// Redisの限流
パブリックブールtryAcuire(文字列のキー、int型expireSeconds、int型CHECKNUM){
boolean型acquireResult = redisClient.execute(キー、新しいJedisAction <ブール>(){
@Override
公共ブールアクション(Jedis jedis){
試み{
文字列setNxResult = jedis.set(キー、 "1"、 "NX"、 "EX"、expireSeconds);
IF( "OK" .equals(setNxResult)){
trueを返す;
}
ロングNUM = jedis.incr(キー);
IF( NUM == 1){
jedis.expire(キー、expireSeconds);
}
もし(NUM> CHECKNUM){
戻り偽;
}
trueを返します。
}キャッチ(例外e){
LOGGER.error( "acquireResultエラー"、E)。
}
trueを返します。
}
})。
acquireResultを返します。
}

おすすめ

転載: www.cnblogs.com/tilamisu007/p/12518372.html