Redis是 Remote Dictionary Server的簡寫,意思為遠端字典Server。
字典Dictionary 即是Key-Value對照表。
Redis
Redis存放資料的速度極快,是物理層面上的快,因為Redis對記憶體(Memory)進行操作。
用以下數量級打個比方,會比較有感覺
假如磁碟(Disk、Storage) 的讀寫速度是1、容量10000。
那麼…
記憶體(Mem、RAM) 的讀寫速度會是100、容量是100,
CPU快取(Cache)的讀寫速度是10000、容量是1。
之前提到的MySQL資料庫是對硬碟進行讀寫,
Redis將資料存放於記憶體中的特點為:讀寫速度比存放於磁碟快、但容量較小,且資料在斷電就揮發(Volatile)不見了(若沒及時寫進磁碟中的話)
若有短時間內大量存取的需求,卻又不想如此頻繁的對硬碟讀寫,這種場合可以使用Redis資料庫暫時存放資料,等一段時間後再一齊寫入硬碟裡。
安裝Redis
Redis與MySQL同樣是資料庫,分成Server端與Client端,只是存放資料的形式不同。
Windows 安裝Redis
到Github下載 .msi安裝檔案,
接著下一步、勾選加入PATH環境變數
ADD PATH
預設會將Redis Server開啟成一項 Windows服務
Windows Service
Server端有了,再來啟動一個CMD來執行 Client端
$ redis-cli
MacOS 安裝Redis
用Homebrew來快速方便的安裝
$ brew install redis
啟動Redis Server 端
$ redis-server
再另外起一個Terminal來執行Client
$ redis-cli
Docker 安裝Redis
把container命名為redis_test
$ docker run --name redis_test -d -p 6379:6379 redis
執行Client端
$ docker exec -it redis_test /bin/bash
# redis-cli
(要結束Redis的話)
$ docker container rm -f redis_test
(如果Windows上出現 the input device is not a TTY. If you are using mintty, try prefixing the command with 'winpty’的錯誤,將terminal改用CMD再試一次。)
Redis Server端預設使用 6379 port。
成功啟動Redis Server後的畫面,直接畫一個Redis的圖樣出來。