redis 生成訂單單號 stringRedisTemplate

/**
     * Redis 生成 遞增訂單號
     * --- 注意 redis 不穩定 ,數據消失的問題
     * @param key
     * @return
     */
    public String getNumber(String key){
       // 每次增加一個
        String num = stringRedisTemplate.opsForValue().increment(key,1L).toString();
        // 在24小時內有效
        stringRedisTemplate.expire(key,24,TimeUnit.HOURS);
        num = StringUtils.leftPad(num,4,'0');
        return num;
    }

注意:需要考慮 redis 不穩定的情況,建議 設計表 然後通過分佈式鎖實現

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章