国产TS紫迹丝袜高跟鞋在线,一区二区三区国产自产视频免费,67pao国产人成视频,午国产午夜激无码毛片不卡

愛碼網(wǎng)專注于資源免費下載

Redis基礎(chǔ)

一.簡介

1.1 redis簡介

Redis基礎(chǔ)-第1張圖片

redis是開源免費的高性能key-value數(shù)據(jù)庫,屬于NoSQL數(shù)據(jù)庫。
redis支持?jǐn)?shù)據(jù)的持久化,可以將內(nèi)存中的數(shù)據(jù)保存在磁盤中,重啟的時候可以再次加載進行使用。
redis不僅僅支持簡單的key-value類型的數(shù)據(jù),同時還提供list,set,zset,hash等數(shù)據(jù)結(jié)構(gòu)的存儲。
redis支持?jǐn)?shù)據(jù)的備份,即master-slave模式的數(shù)據(jù)備份。

redis與其他key-value緩存產(chǎn)品有如下三個特點:
(1)性能極高 – Redis能讀的速度是110000次/s,寫的速度是81000次/s 。
(2)豐富的數(shù)據(jù)類型 – Redis支持二進制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 數(shù)據(jù)類型操作。
(3)原子 – Redis的所有操作都是原子性的,意思就是要么成功執(zhí)行要么失敗完全不執(zhí)行。
(4)豐富的特性 – Redis還支持 發(fā)布訂閱消息, 通知, key 過期等等特性。

1.2 redis安裝

下載地址(windows版本)
https://github.com/MicrosoftArchive/redis/releases

完整版本下載地址(Linux):
http://download.redis.io/releases/

Redis Desktop Manager(可視化連接工具)
下載地址:https://www.cr173.com/soft/73300.html

1.3 啟動

1.先啟動服務(wù)端
命令:redis-server.exe redis.windows.conf
2.啟動客戶端
命令:redis-cli.exe

二.redis數(shù)據(jù)結(jié)構(gòu),命令

keys * : 查詢所有的鍵
type key : 獲取鍵對應(yīng)的value的類型
del key:刪除指定的key value

2.1 String

string:字符串類型是非常常見的一種類型,Redis中的字符串類型和很多編程語言里的字符串類型差不多,但相對要靈活些。

set key value	設(shè)置key對應(yīng)的值為string類型的value  
mset key1 value1 [key2 value2...]	一次設(shè)置多個key  
get key	獲取指定key的value值  
mget key1 [key2 ...]	一次獲取多個key的value值  
incr key	對key的值做自增操作,返回新的值  
decr key	對key的值做自減操作,返回新的值  
incrby key integer	對key的value加指定integer  
decrby key integer	對key的value減指定integer  
append key value	給指定key的字符串追加value  
substr key start end	截取key,從start(包含)到end(包含)。注意只是返回截取的value,源value并沒改變

Redis基礎(chǔ)-第2張圖片

2.2 list

list:列表可以看作是個雙端隊列,可以在列表兩端推入和彈出元素。

lpush key value: 將元素加入列表左表
rpush key value:將元素加入列表右邊
lrange key start end :范圍獲取
lpop key: 刪除列表最左邊的元素,并將元素返回
rpop key: 刪除列表最右邊的元素,并將元素返回

Redis基礎(chǔ)-第3張圖片

2.3 hash

hash:Redis中的散列可以讓用戶將多個鍵值對存儲到一個Redis鍵中

存儲: hset key field value
獲?。?nbsp;hget key field
獲取所有的field和value: hgetall key
刪除: hdel key field

Redis基礎(chǔ)-第4張圖片

2.4 set

set : 不允許重復(fù)元素,集合最顯著的特點應(yīng)該就是其中的元素互不相同。

存儲:sadd key value
獲取:smembers key:獲取set集合中所有元素
刪除:srem key value:刪除set集合中的某個元素

Redis基礎(chǔ)-第5張圖片

2.5 sortedset

sortedset:有序集合類型,不允許重復(fù)元素,且元素有順序

存儲:zadd key score value
獲?。簔range key start end [withscores]
刪除:zrem key value

Redis基礎(chǔ)-第6張圖片

三.redis持久化

3.1 RDB

在默認情況下,Redis將內(nèi)存數(shù)據(jù)庫快照保存到dump.rdb的二進制文件中。
可以對Redis進行設(shè)置,讓它在“N秒內(nèi)數(shù)據(jù)集至少有N個改動”, 這一條件被滿足時,自動保存一次數(shù)據(jù)集。比如說:讓Redis滿足“60秒內(nèi)至少有1000個鍵被改動”這一個條件時,自動保存一次數(shù)據(jù)集。

3.2 AOF

開啟AOF持久化
appendonly yes

appendfsync always:每次有新命令追加到aof文件時就執(zhí)行一個持久化,非常慢但是安全
appendfsync everysec:每秒執(zhí)行一次持久化,足夠快(和使用rdb持久化差不多)并且在故障時只會丟失1秒鐘的數(shù)據(jù)
appendfsync no:從不持久化,將數(shù)據(jù)交給操作系統(tǒng)來處理。redis處理命令速度加快但是不安全。

四.JavaWeb連接

核心代碼

@ResponseBody
@RequestMapping("/list")
public Object listUser() {
    if (null != redisUtil.get("user")) {
        return redisUtil.get("user");
    }
    List<User> userList = userService.list();
    String userStr = JSONObject.toJSONString(userList);
    redisUtil.set("user", userStr, 10);
    return userStr;
}

可以看到已經(jīng)set了:
Redis基礎(chǔ)-第7張圖片

10s內(nèi),再次請求時,是從緩存中獲取的數(shù)據(jù):
Redis基礎(chǔ)-第8張圖片


本文鏈接:http://fangxuan.com.cn/article/105.html

網(wǎng)友評論

熱門文章
隨機文章
熱門標(biāo)簽
側(cè)欄廣告位