Redis 學習路線

shaojie 8年前發布 | 32K 次閱讀 Redis NoSQL數據庫

學習和使用 Redis 一般可以分為以下四個階段:

  1. 初學者入門
  2. 進階實戰
  3. 理解原理
  4. 貢獻和開發

本文接下來將在四個小節里面分別對這四個階段進行介紹。

如果你只是對 Redis 感興趣, 又或者聽別人說過一些關于 Redis 的介紹, 但是卻并沒有實際使用過 Redis , 那么你就處于 Redis 初學者這一階段。

Redis 初學者可以考慮使用 《Redis入門指南(第2版)》 作為教程, 并輔以 《Redis命令參考》文檔 作為參考。

《Redis入門指南》是 ioredis 、 medis 等項目的作者 luin 的作品, 該書深入淺出地介紹了 Redis 的主要特性、基本命令以及使用方法, 整本書的篇幅不多, 行文簡單, 很容易就能夠看完。 初學者可以通過閱讀這本書知道 Redis 是什么以及它能做什么。

因為篇幅所限, 《Redis入門指南》并沒有對 Redis 的各個命令展開進行介紹, 因此如果讀者想要進一步了解某個命令的詳細用法和相關信息, 那么可以通過《Redis命令參考》進行查詢。

在閱讀了《Redis入門指南》和《Redis命令參考》之后, 初學者應該對 Redis 的功能、作用以及使用方法有了基本的了解, 并能夠使用 Redis 去解決一些簡單的問題。 在此之后, 初學者就可以向下一階段進發, 考慮如何將 Redis 應用到實際的工作當中。

Note

擴展閱讀

除了《Redis入門指南》和《Redis命令參考》之外, 以下列出的一些資料也值得 Redis 初學者去觀看和閱讀:

學習 Redis 的第二個階段是進階實戰階段, 處于這一階段的 Redis 學習者應該對 Redis 有了基本的理解, 熟悉 Redis 各個命令以及各項特性的基本用法, 但還是不太清楚應該如何使用 Redis 去解決自己在工作上遇到的問題。

為此, 處于這一階段的 Redis 學習者可以通過閱讀 《Redis實戰》 一書以及其他 Redis 用戶分享的心得來提高自己使用 Redis 的能力。

《Redis實戰》一書是 Redis Group 討論組中的熱門發言者 Josiah Carlson 所作, 該書通過實際的例子, 展示了使用 Redis 構建多種不同的應用程序的方法。 處于進階階段的 Redis 學習者可以通過閱讀該書來學習如何使用 Redis 去構建實際的應用, 然后舉一反三, 把書中介紹的程序和方法應用到自己遇到的問題上。

除了《Redis實戰》之外, 國內外的很多公司(比如推ter、新浪微博等)都在網上公布了他們使用 Redis 的方法、心得和經驗, Redis 學習者可以通過這些分享中了解到更多使用 Redis 的例子, 以及這些公司在使用 Redis 過程中遇到的問題、困難和陷阱, 從而學會如何在實際中更好地使用和管理 Redis 。

實踐使用 Redis 的另一個難點是如何在大規模的數據環境中使用 Redis , 要解決這個問題就需要對 Redis 進行擴展: 目前擴展 Redis 常見的技術包括 Redis 自帶的 復制(replication)SentinelCluster 功能, 以及 twemproxycodis 等項目, Redis 用戶可以通過這些技術的相關文檔來學習如何使用這些技術。

在弄懂了如何在實際中使用 Redis 之后, 我們要考慮的就是如何解決 Redis 在使用過程中引發的問題; 如何優化 Redis 的性能; 如何對 Redis 進行二次開發, 使得它可以符合自己的某些要求; 又或者準備去開發一個自家公司特有的類 Redis 數據庫。

為了達到這些目的, 我們必須對 Redis 的運作原理和內部結構有所了解。 要做到這一點, 我們必須深入地研讀 Redis 的源碼: https://github.com/antirez/redis

除了 Redis 源碼之外, 一個比較好的學習 Redis 內部原理的資料就是 《Redis設計與實現》 一書, 并且該書也附帶了一個 帶有注釋的 Redis 源碼項目 。 通過同時閱讀書本和帶注釋的源代碼, 讀者能夠快速地了解到 Redis 的內部構造, 以及各項主要功能的實現原理。

在了解了 Redis 的原理之后, 我們可以考慮向 Redis 項目貢獻代碼, 又或者開發自己的類 Redis 數據庫。

除了以上兩點之外, 我們還可以考慮通過 Redis 最新的可載入模塊系統(loadable module system), 以編寫模塊的方式來為 Redis 添加新功能: http://antirez.com/news/106

好的, 關于 Redis 學習資料的介紹就到此結束, 希望這些資料會對正在學習和使用 Redis 的朋友們帶來幫助。

利益申明:本文作者是《Redis命令參考》和《Redis實戰》的譯者,《Redis設計與實現》的作者。

黃健宏(huangz)

2016.5.24

 

來自: http://blog.huangz.me/diary/2016/how-to-learn-redis.html

 

 本文由用戶 shaojie 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!