《Redis開發與運維》筆記 初識Redis

2021-10-23 14:22:57 字數 1234 閱讀 8207

目錄

redis優點

redis特性

速度快基於鍵值對的資料結構伺服器

豐富的功能

簡單穩定

客戶端語言多

持久化主從複製

高可用和分布式

redis使用場景

redis可以做什麼

redis不可以做什麼

用好redis的建議

切勿當作黑盒使用,開發與運維同樣重要

閱讀原始碼

redis重大版本

redis2.6

redis2.8

redis3.0

redis3.2

redis4.0

與很多鍵值對資料庫不同的是,redis中的值不僅可以是字串,而且還可以是具體的資料結構,這樣不僅能便於在許多應用場景的開發,同時也能夠提高開發效率。

redis的全稱是remote dictionary server,它主要提供了5種資料結構:字串、雜湊、列表、集合、有序集合,同時在字串的基礎之上演變出了點陣圖(bitmaps)和hyperloglog兩種神奇的「資料結構」,並且隨著lbs(location based service,基於位置服務)的不斷發展,redis3.2版本中加入有關geo(地理資訊定位)的功能,總之在這些資料結構的幫助下,開發者可以開發出各種「有意思」的應用。

以筆者維護的上千個redis為例,沒有出現過因為redis自身bug而宕掉的情況。

排行榜系統

計數器應用

社交網路

訊息佇列系統

站在資料冷熱的角度看,資料分為熱資料和冷資料

在很多公司內只有專職的關係型資料庫dba,並沒有nosql的相關運維人員,也就是說開發者很有可能會自己運維redis,對於redis的開發者來說既是好事又是壞事。

參考:《redis開發與運維》

《Redis開發與運維》學習筆記 阻塞

redis是典型的單執行緒架構,所有的讀寫操作都是在一條主線程中完成的。當redis用於高併發場景時,這條執行緒就變成了它的生命線。如果出現阻塞,哪怕是很短時間,對於應用來說都是噩夢。導致阻塞問題的原因 通常redis執行命令速度非常快,但是,如果對乙個包含上萬個元素的hash結構執行hgetall...

《Redis開發與運維》筆記 發布與訂閱

redis提供了基於 發布 訂閱 模式的訊息機制。訊息發布者與訂閱者不直接通訊,發布者客戶端向指定的頻道 channel 發布訊息,訂閱該頻道的每個客戶端都可以接收到資訊。發布訊息 publish channel message 示例 向 channel layne 通道發布一條 hello wor...

redis 開發與運維 1

由於手上負責的專案很依賴redis,而且redis曾經出過問題,故決定好好系統學習一下redis的知識,本文打算先介紹一下redis的基礎知識 首先我們必須明確的幾個知識點1 1 keys 這個命令可以檢視所有的鍵,這是這個 當前db所有的key 127.0 0.1 6379 keys 1 haha...