1. 程式人生 > >淺談Redis的特性

淺談Redis的特性

圖片描述

在這篇文章中,我們將談論 Redis(REmote DIctionary Server)。Redis是一個開源的、記憶體式的、鍵值儲存資料庫。它也被稱為作為鍵值儲存的字典伺服器,這些鍵值不僅可以是字串,還可以是hashes(雜湊型別)、sets(集合)、lists(列表) 和sorted sets(有序集合)。

Redis與Memcached外形上非常相似,但它們之間也有一些差異,如下圖:

圖片描述

特性細節

記憶體式: Redis將鍵值儲存在主存中,用於快速地讀寫訪問。

複製: Redis支援主從複製。資料讀取在slave完成,而資料寫入在 master 完成。複製提供可伸縮性和可用性。任何一個slave宕機,其他的slave還可以提供資料訪問。

資料結構: Redis不僅儲存字串,還支援列表,集合,雜湊和有序集合。

虛擬記憶體: Redis使用RAM作為記憶體式儲存。但是,在記憶體不足的情況下,它使用虛擬記憶體來儲存資料。

釋出/訂閱模型: Redis支援建立釋出和訂閱通道,這樣Redis客戶端可以訂閱任意的通道來進行資料消費,並且任何已訂閱該通道的客戶端可以釋出資料。

資料永續性: Redis將記憶體中的資料定期儲存到檔案系統中。當Redis節點故障時,資料可以從Redis資料檔案恢復。

Redis有豐富的SDK支援。你可以在這裡找到客戶端庫列表。

有很多高流量網站已經使用了Redis,下面給出了其中一些。

  1. Stack Overflow
  2. Craigslist
  3. Rackspace
  4. Plugin support for Magento
  5. GitHub

Redis多年來保持增長趨勢。來自 DB-Engines對Redis和Memcached的統計資料如下表所示。那麼,DB-Engines具體是如何統計趨勢的,請點選

圖片描述