跟我一起學Redis之Redis配置文件啃了一遍之後,從尷尬變得有底氣了(總結了一張思維圖)...

前言

秋高氣爽的一天,那時候年輕帥氣的我正在參照着搜索引擎寫代碼,迷之微笑般的敲着鍵盤(又從搜索引擎上找到代碼案例啦),突然領導在小隔間裏傳來了呼喚聲,然後有了以下場景:

領導:小Z,你過來一下;

當時小年輕的我,拿上紙和筆以迅雷不及掩耳之勢般的速度來到領導跟前;

領導:有個需求,把現在xxx項目的Redis持久化給用上,最好今天下班前搞定,然後用上;

初碰Redis的我,當時很懵,只會簡單的程序操作,只能小聲的回覆:好的,我回去查查;

真實案例,短短兩句話就把需求溝通完了,肯定是有問題的,不是領導沒說清楚,而是當時真是菜的不行,連問啥都不知道。好在最後在同事的幫助之下多次與領導溝通,最終完成任務。


對於真正做事,上面的工作需求溝通是有很大問題的:比如持久化頻率?對持久化數據完整性的要求?這些都不確定,最終可能得到結果就不一樣,最主要是這些功能直接通過Redis配置文件修改即可完成,當時聽到需求的時候還以爲要寫程序,心裏還想着這麼短的時間咋能完成。所以學習很重要,類似於這種通過配置文件進行功能配置的應用實在太多,比如MySql,ngnix等等。

既然知道是這麼回事,肯定要避免下次出現同樣的尷尬,於是把Redis配置文件啃了一遍;

正文

redis的配置文件註釋其實很詳細,在配置文件中,用#開頭的形式對每個配置項進行描述說明,如下圖對端口的說明:

配置文件位置,這裏僅參考,具體根據本機路徑查看:

windows中與運行程序在一塊,如下圖:

linux中的配置文件一般默認爲:/usr/local/redis/etc/redis.conf

注:不管是windows還是linux,後續如果需要改配置文件,都建議拷貝一份出來進行修改。

上菜吧,根據Redis配置文件的分段,將配置進行如下圖歸類:

本來想以文字的形式歸納總結的,但卻不知道如何排版,這裏就將其總結成一個思維導圖,顯得直觀,如下:

  • 單位說明(不分大小寫)

  • INCLUDES(引入外部配置文件)

  • NETWORK(網絡配置)

  • GENERAL(常規配置)

  • SNAPSHOTTING(快照,redis持久化的方式之一,保存文件名以.rdb結尾)

  • REPLICATION(主從複製)

  • SECURITY(安全)

  • LIMITS(限制)

  • APPEND ONLY MODE(追加,Redis持久化方式之二,保存文件名爲.aof)

  • LUA SCRIPTING(Lua腳本相關配置)

  • REDIS CLUSTER(Redis集羣,實現高可用)

  • SLOW LOG(慢查詢記錄)

  • LATENCY MONITOR(延時監控)

  • ADVANCED CONFIG(高級配置,優化存儲,一般都是默認值,這裏先不列出來啦)

以上內容只是對Redis配置文件進行解讀,後續會針對功能點進行舉例演示,比如結合持久化、主從複製、哨兵模式、集羣搭建等相關知識點將對應配置進行實例演習,小夥伴敬請期待吧;文中的命令是使用Windows中的配置文件參考的,版本較低,可能命令名稱有細微改動,但功能不變。

總結

這節的主要目的是解讀配置文件內容,大概理解配置文件中各項配置的意思,當遇見相關需求時,有一個正確的思路,避免文章剛開始那種場景發生到小夥伴身上,至少有討論的資本,最終把需求快速理解透。下一篇說說Redis事務。

Redis配置文件整體的腦圖已經上傳到公衆號上,關注"Code綜藝圈",發送Redis即可;

整理了一些面試資料,關注公衆號「Code綜藝圈」,發送"面試"獲取下載地址,至於教程,手裏的也有一些Web前端、.Net後端、Java的教程,但現在網上資源比較多,大部分小夥伴喜歡在線看;如果有需要,小夥伴可以私聊我,目前先把面試相關的資料放上去,收集內容會持續更新,包含一些大廠面試題,助力小夥伴找到心儀的工作:

教程截取部分圖如下,有需要私聊我:

一個被程序搞醜的帥小夥,關注"Code綜藝圈",識別關注跟我一起學~~~

擼文不易,莫要白瞟,三連走起~~~~