Redis系列(一):Redis簡介及環境安裝

提到Redis,你們確定都聽過,而且應該都在項目中或多或少的使用過,也許你以爲Redis用起來挺簡單的呀,但若是有人問你下面的幾個問題(好比同事或者面試官),你能回答的上來嗎?html

  1. 什麼是Redis?
  2. Redis能存儲哪幾種數據結構?
  3. Redis有幾種持久化機制?它們的優缺點分別是什麼?
  4. 哪些場景須要使用Redis?
  5. 什麼是緩存雪崩,如何避免?
  6. 什麼是緩存穿透,如何避免?
  7. 什麼是緩存擊穿,如何避免?

若是你都能回答的上來,恭喜你,說明你對Redis有必定的瞭解,若是回答不上來,也不要緊,本系列博客會對Redis進行一系列的講解,歡迎關注!linux

所謂工欲善其事,必先利其器,既然要學習Redis,首先咱們至少得知道什麼是Redis以及如何安裝Redis環境,這也是本篇博客的主要內容。git

1. Redis簡介

什麼是Redis呢?github

Redis是一個開源(BSD許可)的內存數據結構存儲,用做數據庫、緩存和消息代理。它支持諸如字符串、散列、列表、集合、有序集合等數據結構。-- Redis官網面試

Redis是一個開源的使用ANSI C語言編寫、支持網絡、可基於內存亦可持久化的高性能的key-value數據庫。-- 百度百科redis

Redis是一款依據BSD開源協議發行的高性能key-value存儲系統,一般被稱爲數據結構服務器。-- 其它網友shell

Redis是一個遠程內存數據庫,它不只性能強勁,並且還具備複製特性以及爲解決問題而生的獨一無二的數據模型。Redis提供了5種不一樣類型的數據結構,各式各樣的問題均可以很天然地映射到這些數據結構上。 -- 《Redis實戰》數據庫

Redis是一個速度很是快的非關係型數據庫,它能夠存儲鍵(key)與5種不一樣類型值(value)之間的映射(mapping),能夠將存儲在內存的鍵值對數據持久化到硬盤,可使用複製特性來擴展讀性能,還可使用客戶端分片來擴展寫性能。-- 《Redis實戰》windows

2. Redis環境安裝(Windows)

說明:Redis官方並無提供Windows版本的Redis,也不建議在生產環境使用Windows版本的Redis,我目前所在的公司生產環境Redis是部署在Linux服務器的。緩存

雖然Redis官方不支持Windows版本,可是微軟Microsoft Open Tech Group提供了1個Windows版本的Redis,下載地址:https://github.com/microsoftarchive/redis/releases

將下載好的文件解壓到你喜歡的目錄,我這裏是E:\Tools\Redis-x64-3.0.504,以下所示:

雙擊上圖中紅色標記的redis-server.exe便可啓動Redis服務:

也能夠打開一個cmd窗口,切換到Redis所在目錄,而後執行以下命令啓動:

redis-server.exe redis.windows.conf

經過這2種方式打開,須要保證cmd窗口一直保持打開狀態,關閉後客戶端就沒法鏈接,若是服務器重啓了,須要再次打開Redis服務端,爲了解決該問題,咱們能夠把Redis安裝成Windows服務:

cd E:\Tools\Redis-x64-3.0.504

redis-server --service-install redis.windows.conf

你能夠直接在界面上啓動/中止該服務,也能夠執行cmd命令來啓動/中止/卸載該服務:

啓動服務:

redis-server --service-start

中止服務:

redis-server --service-stop

卸載服務:

redis-server --service-uninstall

3. Redis環境安裝(Linux)

首先,咱們須要將Linux環境下Redis的安裝包放到服務器上去,這裏有2種方法,第1種方法是,打開Redis官網的下載地址:https://redis.io/download,下載穩定版本到本機:

而後經過工具,好比Xftp,將本地下載的文件上傳至Linux服務器的某目錄下,好比我這裏要上傳的目錄是/mnt。

第2種方式是經過命令直接下載Redis的安裝包到服務器的/mnt目錄下,具體命令以下所示:

cd mnt/

wget -q http://download.redis.io/releases/redis-5.0.7.tar.gz

而後,執行以下命令解壓文件:

tar -xzf redis-5.0.7.tar.gz

而後,執行以下命令將解壓好的文件移動到/usr/local目錄下,並進行編譯:

mv redis-5.0.7 /usr/local/

cd /usr/local/redis-5.0.7

make

注意事項:執行完make命令後,屏幕會輸出好多信息,大概有2~3屏的樣子

當看到以下信息時,表明編譯完成:

而後,切換到/usr/local/redis-5.0.7/src目錄,執行make install命令進行安裝:

cd src/

make install

而後,切換到/usr/local/redis-5.0.7目錄,新建文件夾bin和etc,並將該目錄下的redis.conf文件移動到etc目錄,

將/usr/local/redis-5.0.7/src目錄下的mkreleasehdr.sh redis-benchmark redis-check-aof redis-cli redis-server

移動到剛剛建立的bin目錄:

cd ..

mkdir bin

mkdir etc

mv redis.conf etc/

cd src

mv mkreleasehdr.sh redis-benchmark redis-check-aof redis-cli redis-server /usr/local/redis-5.0.7/bin/

而後,切換到/usr/local/redis-5.0.7/etc目錄,修改下Redis的配置文件redis.conf:

cd ..

cd etc/

vi redis.conf

redis.conf主要修改如下4點:

  1. 將daemonize no改成daemonize yes,表示須要在後臺運行

  2. 將bind 127.0.0.1這一行註釋掉

    這裏的bind指的是隻有指定的網段才能遠程訪問這個redis,註釋掉後,就沒有這個限制了。

  3. 將protect-mode yes改成protect-mode no

    默認是protect-mode yes,不能遠程訪問,改成no以後,能夠遠程訪問

  4. 添加requirepass 123456設置密碼(默認密碼爲空)

最後,切換到/usr/local/redis-5.0.7/bin目錄,執行以下命令啓動Redis服務:

cd ..

cd bin/

redis-server /usr/local/redis-5.0.7/etc/redis.conf

啓動後,能夠執行以下命令查看Redis是否啓動以及進程ID:

ps aux | grep redis-server

4. Redis Hello World示例

打開cmd窗口,打開一個redis-cli交互窗口來簡單使用下Redis:

redis-cli.exe -h 127.0.0.1 -p 6379

設置一個key-value緩存,其中key爲hello,value爲hello world!:

set hello "hello world!"

獲取key爲hello的值:

get hello

5. Redis Desktop Manager使用

雖然咱們能夠經過命令的方式來查看Redis存儲的數據,但畢竟不太友好,這裏推薦個比較流行的工具:Redis Desktop Manager。

官網地址:https://redisdesktop.com/

官網如今的版本2019.5須要付費才能使用,不然只有14天的試用期。

在2019年6份打開仍是下面這樣的,貌似漲價了啊,哈哈。

不過咱們仍然能夠下載以前不付費的版本,下載地址:https://github.com/uglide/RedisDesktopManager/releases/tag/0.8.8

安裝過程比較簡單,這裏再也不贅述,安裝完成後,鏈接本機Windows環境下的Redis服務器:

鏈接成功後,能夠看到以前設置的值:

也能夠鏈接遠程Linux環境下的Redis服務器:

有些同窗可能使用的工具是Another.Redis.Dsektop.Manager,這裏只貼下下載地址:http://electronjs.org/apps/anotherredisdesktopmanager,有興趣的同窗能夠自行下載。

6. 源碼及參考

Redis的安裝和部署(windows )

Windows下使用Redis(一)安裝使用

Linux下安裝Redis

若是以爲文章寫的不錯,歡迎關注個人微信公衆號:「申城異鄉人」,全部博客會同步更新。

若是有興趣,也能夠添加個人微信:zwwhnly_002,一塊兒交流和探討技術。

相關文章
相關標籤/搜索