首頁  >  文章  >  資料庫  >  Redis入門基礎常用操作指令執行個體分析

Redis入門基礎常用操作指令執行個體分析

WBOY
WBOY轉載
2023-05-28 11:31:24887瀏覽

Redis基礎

作為一種開源(BSD授權)的記憶體資料結構儲存系統,Redis可用於作為資料庫、快取和訊息中介軟體。它支援多種類型的資料結構,如字串(strings),雜湊(hashes),列表(lists),集合(sets),有序集合(sorted sets)與範圍查詢,bitmaps,hyperloglogs 和地理空間( geospatial) 索引半徑查詢。

Redis 內建了複製(replication),LUA腳本(Lua scripting),LRU驅動事件(LRU eviction),事務(transactions)和不同層級的磁碟持久化(persistence),並透過Redis哨兵(Sentinel )和自動分區(Cluster)提供高可用性(high availability)。

一、redis是單線程

redis是基於記憶體操作的,cpu並不是redis的效能瓶頸,它的瓶頸取決於機器的記憶體和網路頻寬,所以能用單執行緒實作那就用單線程好了。

那為什麼用單線程還能這麼快?

首先有2個誤解先要明確:

  • 高效能的伺服器不一定是多執行緒的。

  • 多執行緒也不是一定比單執行緒效率高。

redis是將所有的資料放到記憶體裡去,多執行緒的話反而會存在cpu切換上下文從而增加耗時,而對記憶體系統來說,沒有上下文的切換,單線程操作效率就是最高的。

二、關於資料庫的常用操作

1. 預設資料庫

redis預設有16個資料庫,預設使用是第一個資料庫(下標為0)。可以查看下設定文件,裡面有database 16

Redis入門基礎常用操作指令執行個體分析

2. 切換資料庫

select 3,可以切換到第4個資料庫。

Redis入門基礎常用操作指令執行個體分析

3. 查看資料庫大小

dbsize可以查看目前資料庫大小。

Redis入門基礎常用操作指令執行個體分析

這時,給資料庫裡set一個值,再查看資料庫大小,就改變了。

Redis入門基礎常用操作指令執行個體分析

4. 清空資料庫

清空目前的資料庫

flushdb

清空所有的資料庫

flushall

三、關於Redis-Key的常用操作

1. set 設定key 和value
set name pingguo222
2. keys * 查看所有的key

可以查看所有的key。這裡切換回預設的資料庫,查看所有key。

keys *

Redis入門基礎常用操作指令執行個體分析

3. get key 的value
get name

Redis入門基礎常用操作指令執行個體分析

4.exists key 是否存在key
exists name

存在,則回傳1,不存在則回傳0。

Redis入門基礎常用操作指令執行個體分析

5. move 移動 key

MOVE 指令是將目前資料庫的 key 移到給定的資料庫 db 當中。

move name 0

例如,假設目前位於3資料庫,要執行指令將名為"name"的內容移到0資料庫。如果成功了返回1,失敗了返回0。

Redis入門基礎常用操作指令執行個體分析

6. 設定key過期時間

我設定age 10s後過期,等10s後再get就拿不到值了。

expire age 10

Redis入門基礎常用操作指令執行個體分析

7. 查看key的剩餘時間

我設定name過期時間100s,使用ttl查看。

ttl name

Redis入門基礎常用操作指令執行個體分析

8. 查看key的類型
type name

Redis入門基礎常用操作指令執行個體分析

指令其實有很多,redis官網提供了查詢指令的地方,後面啥不會就查啥。

Redis入門基礎常用操作指令執行個體分析

以上是Redis入門基礎常用操作指令執行個體分析的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:yisu.com。如有侵權,請聯絡admin@php.cn刪除