redis基礎知識

2021-10-24 19:34:07 字數 1324 閱讀 3758

redis (remote dictionary sever)遠端字典服務,是乙個開源的使用ansi c語言編寫,支援網路, 可基於記憶體亦可持久化的日誌型,key-value資料庫,並支援多種語言的api。免費和開源, 也被稱之為結構化資料庫

redis預設有16個資料庫

檢視配置檔案,可以看到database 16,資料庫有16個,編號0-15,預設使用的是第0號資料庫

可以使用select 編號,來選擇資料庫

檢視當前資料庫的所有的key, keys *

清除當前的資料庫:flushdb

清空全部資料庫:flushall

redis是單執行緒的!

官方表示:redis是基於記憶體的操作,cpu不是redis效能的瓶頸,redis的瓶頸是根據機器的記憶體和網路的頻寬,既然可以使用單執行緒來實現 ,就使用單執行緒了!

redis是c語言寫的,官方提供的資料為10萬+的qps,完全不比同樣是使用key-value的memecache差

redis為什麼單執行緒速度還這麼快:

誤區1:高效能的伺服器一定是多執行緒的?

誤區2:多執行緒(cpu上下文切換)一定比單執行緒效率高!

cpu  > 記憶體  > 硬碟的速度

核心:redis是將所有的資料全部放在記憶體中的,所以說使用單執行緒去操作效率就是高,多執行緒(cpu上下文切換:耗時操作)對於記憶體系統來說,如果沒有上下文切換效率是最高的。多次讀寫都是在乙個cpu上的,在記憶體情況下這個就是最佳方案

Redis基礎知識

1 redis是開源的高效能鍵值對 key value 資料庫 通過提供各種鍵值資料型別來適應不同場景下的儲存需求,並借助許多高層級的介面使其可以勝任如快取 佇列系統等不同的角色。2 remote dictionary server,以字典結構儲存資料,並允許其他應用通過tcp協議讀寫字典中的內容 ...

redis基礎知識

redis是乙個基於記憶體的高效能key value 1.redis五大基本資料型別 字串 string set get 雜湊 hash hmset hmgetall 鍊錶 list 按照插入順序可以新增乙個元素列表的頭部 左邊 和尾部 右邊 lpush rpush lrange 集合 set sa...

Redis基礎知識

樂觀鎖watch相當於mysql裡面的version jedis採用的是直連的方式,多個執行緒的操作不安全,避免的話採用的是池化技術 redis資料使用的是記憶體中,因此廣泛應用在快取裡面 使用當作快取的原因 模擬一下作業系統裡面的區域性性原理 使用redis不用本地的map的原理 map屬於本地快...