好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > Redis實現高并發(fā)計數器

Redis實現高并發(fā)計數器

熱門標簽:一個地圖標注多少錢 四川穩(wěn)定外呼系統軟件 400電話辦理的口碑 廊坊外呼系統在哪買 高碑店市地圖標注app 臺灣電銷 地圖標注工廠入駐 南京手機外呼系統廠家 b2b外呼系統

業(yè)務需求中經常有需要用到計數器的場景:譬如一個手機號一天限制發(fā)送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 plateNumber車牌
 * @param vin 車架號
 * @param engineNo發(fā)動機
 * @param request
 * @param response
 * @throws Exception
 */
 @RequestMapping("/queryCarViolationList.json")
 @AuthorizationApi
 public void queryCarViolationList(@CurrentToken Token token,String plateNumber,String vin,
    String engineNo,HttpServletRequest request,HttpServletResponse response) throws Exception {
   String userId=token.getUserId();
      //超過限制,攔截請求
   if(denialOfService(userId)){
  apiData(request, response, ReqJson.error(CarError.ONLY_5_TIMES_A_DAY_CAN_BE_FOUND));
  return;
   }
 //沒超過限制,業(yè)務邏輯……
 }

每次調用接口之前,先獲得下計數器自增后的值,如果小于限制,放行,執(zhí)行后面的代碼。如果大于限制,則攔截掉。

JedisUtil工具類:

public class JedisUtil {
 protected final static Logger logger = Logger.getLogger(JedisUtil.class);
 private static JedisPool jedisPool;
 
 @Autowired(required = true)
 public void setJedisPool(JedisPool jedisPool) {
 JedisUtil.jedisPool = jedisPool;
 }
 /**
 * 對某個鍵的值自增
 * @author liboyi
 * @param key 鍵
 * @param cacheSeconds 超時時間,0為不超時
 * @return
 */
 public static long setIncr(String key, int cacheSeconds) {
 long result = 0;
 Jedis jedis = null;
 try {
  jedis = jedisPool.getResource();
  result =jedis.incr(key);
  if (cacheSeconds != 0) {
  jedis.expire(key, cacheSeconds);
  }
  logger.debug("set "+ key + " = " + result);
 } catch (Exception e) {
  logger.warn("set "+ key + " = " + result);
 } finally {
  jedisPool.returnResource(jedis);
 }
 return result;
 }
}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • 詳解利用redis + lua解決搶紅包高并發(fā)的問題
  • Nginx+Lua+Redis構建高并發(fā)Web應用
  • 如何利用Redis鎖解決高并發(fā)問題詳解
  • Redis瞬時高并發(fā)秒殺方案總結
  • PHP實現Redis單據鎖以及防止并發(fā)重復寫入
  • jedispool連redis高并發(fā)卡死的問題
  • 使用lua+redis解決發(fā)多張券的并發(fā)問題

標簽:畢節(jié) 拉薩 南寧 定州 甘南 河源 泰州 伊春

巨人網絡通訊聲明:本文標題《Redis實現高并發(fā)計數器》,本文關鍵詞  Redis,實現,高并發(fā),高,并發(fā),;如發(fā)現本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Redis實現高并發(fā)計數器》相關的同類信息!
  • 本頁收集關于Redis實現高并發(fā)計數器的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 日本黄色片在线免费观看| 一级做a爱片久久毛片| 日本高清www色午夜| 黑人A片波多野结衣办公室| 天天看天天做| 肌肌对肌肌免费30分的| 群体交乱之放荡娇妻中文字幕| 亚洲午夜精品A片久久www古装 | 日本japanesevideo乱| 看黄色一级毛片| 99视频有精品视频高清视频| 人人捏人人揉人人爽| 翁公的东西又大又粗又长| 陆丰市| 国产精品合集一区二区三区| 日韩精品――色哟哟| 午夜精品18??视频国产| 天码毛片一区二区三区入口 | 又黄的A级鬼片| 国产大片中文字幕在线观看| 被我弄丢的你| 99国产精品jk白丝AV网站| 手机看片无码亚洲AV| 好男人在线社区 WWW| 一级成人黄色片| 亚洲国产精品毛片∧v卡在线| 男女啪动最猛动态图乱摇| 中文无码完熟50妇AV在线| 人人干人人干人人干| 撩她上瘾txt黑暗森林完结| 韩漫成人漫画免费| 久久精品国产精品青草图片 | 当众扒开双腿狂躁h男男视频小说| 奈何她千娇百媚春瑟| 17岁在线观看免费完整版中文| 国产在线精品国自产拍影院午夜 | 校花?开腿让我爽一夜视频| 久久久久人妻一区精品加勒比| 杨玉环一级片| 妈妈的朋友电视剧全集| 丝袜肉岳的紧|