redis入門指南(七)—— 安全、協議、管理工具及命令屬性

寫在前面

  學習《redis入門指南》筆記,結合實踐,只記錄重要,明確,屬於新知的相關內容。python

 

安全

  一、可使用bind參數綁定一個地址,使redis只接受這個地址的鏈接。redis

  二、使用requirepass參數,設置一個redis密碼,使得每次客戶端鏈接時都要發送密碼,當執行復制時,若是主庫設置了密碼,須要在從庫的配置文件經過masterauth參數設置主庫的密碼。數據庫

  三、對命令重命名,只須要在配置文件中配置參數rename-command,格式爲:json

1 rename-command 原命令名稱 新命令名稱

  若要禁用某個命令,能夠重命名成空字符串 「」 。安全

 

通訊協議

  四、redis支持兩種協議,一種是比較直觀的在telnet中輸入的簡單協議,另外一種是二進制安全的統一請求協議,這兩種協議只是命令的格式有區別,命令返回值的格式是同樣的。工具

  五、簡單協議適合在telnet中與redis通訊,格式只是簡單的將命令和各個參數以空格分開。學習

  六、返回值格式有5種:ui

    a、錯誤回覆lua

      以 - 開頭,加錯誤信息,以 \r\n 結尾spa

      -ERR unknown command 'haha'\r\n

    b、狀態回覆

  加狀態信息,以\r\n結尾

  +OK\r\n

c、整數回覆

  以+開頭,加數字,以\r\n結尾

  +3\r\n

d、字符串回覆

  以$開頭,加字符串長度並以\r\n分隔,加字符串內容,以\r\n結尾

  $3\r\nPONG\r\n

  若是返回值爲nil,則以$-1和空字符串區別

e、多行字符串回覆

  以*開頭,加字符串組數並以\r\n分隔,加字符串回覆的具體內容

  *3\r\n$1\r\n3\r\n$1\r\n2\r\n$3\r\n1\r\n

七、統一請求協議的格式和多行字符串回覆的格式相似,如:

  SET foo bar

  *3\r\n$3\r\nSET\r\n$3\r\nfoo\r\n1\r\n$3\r\nbar\r\n

  redis主從複製和AOF都使用了統一請求協議
 

管理工具

  八、使用redis-cli查看耗時日誌

    SLOWLOG GET

    經過配置文件參數slow-log-slower-than設置耗時命令的限制,單位爲微秒,設置爲負數則表明關閉慢日誌;slow-max-len限制記錄條數,耗時命令日誌記錄在內存中。每條耗時命令日誌包含4個組成部分:日誌惟一id、執行的UNIX時間、執行耗時(微秒)、命令及其參數。

  九、命令監控MONTITOR,執行這個命令後,redis會將全部執行的命令都會在redis-cli打印出來,這個命令會下降一半的負載能力,僅用於調試。(Instagram團隊使用python開發的基於monitor命令的工具redis-faina,能夠分析出最經常使用的命令,訪問最頻繁的鍵等信息)

  十、工具Rdbtools是一個redis的快照文件解析器,能夠將快照數據導出JSON數據文件,分析redis種每一個鍵的佔用狀況。也能夠將每一個鍵的存儲狀況導出CSV文件便於分析。示例以下:

1 rdb --command json /path/redisdump.rdb > rdboutput.json
2 rdb -c memory /path/redisdump.rdb > rdboutput.cvs

 

redis命令屬性

十一、REDIS_CMD_WRITE

  表示會修改數據庫數據,只讀從庫不可執行這類命令,另外lua腳本中在執行了擁有REDIS_CMD_RANDOM屬性的命令後,不可執行擁有此屬性的命令。

十二、REDIS_CMD_DENYOOM

  表示可能增長redis佔用的存儲空間,擁有此屬性的命令必然擁REDIS_CMD_WRITE屬性,反之否則。當佔用空間達到配置文件maxmemory參數指定的值且根據maxmemory-policy參數沒法釋放空間時,會拒絕執行此類命令。

1三、REDIS_CMD_NOSCRIPT

  擁有此屬性的命令沒法在腳本中執行

1四、REDIS_CMD_RANDOM

  腳本中在執行了擁有此屬性的命令後,不可執行擁有REDIS_CMD_WRITE屬性的命令。

1五、REDIS_CMD_SORT_FOR_SCRIPT

  擁有此屬性的命令會產生隨機結果,在腳本中使用時,redis會對結果進行排序。

1六、REDIS_CMD_LOADING

redis在啓動時(將數據從硬盤載入到內存)只會執行擁有此屬性的命令。

相關文章
相關標籤/搜索