1. 程式人生 > 其它 >[喵咪Redis]Redis安裝與介紹

[喵咪Redis]Redis安裝與介紹

[喵咪Redis]Redis安裝與介紹

前言

哈嘍大家好啊,這次要來和大家一起來了解學習Redis的一系列技術,最終目的是搭建一個高可用redis叢集自動負載災備,那我們先從最基礎的Redis的一些基本介紹以及安裝來說起!

附上:

喵了個咪的部落格:w-blog.cn

Redis官網:http://redis.io/

Redis命令大全:http://doc.redisfans.com/

Redsi原始碼地址:http://download.redis.io/releases/

GitHub地址:https://github.com/antirez/redis

1. Redis是什麼?解決什麼問題?

1.1 Redis是什麼

摘錄百度百科介紹

Redis是一個開源的使用ANSI C語言編寫、支援網路、可基於記憶體亦可持久化的日誌型、Key-Value資料庫,Redis支援豐富的value型別如string(字串)、list(連結串列)、set(集合)、zset(sorted set --有序集合)和hash(雜湊型別)。這些資料型別都支援push/pop、add/remove及取交集並集和差集及更豐富的操作.

Redis 是一個高效能的key-value資料庫。 redis的出現,很大程度補償了memcached這類key/value儲存的不足,在部 分場合可以對關係資料庫起到很好的補充作用。它提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erlang等客戶端,使用很方便。

Redis支援主從同步。資料可以從主伺服器向任意數量的從伺服器上同步,從伺服器可以是關聯其他從伺服器的主伺服器。這使得Redis可執行單層樹複製。存檔可以有意無意的對資料進行寫操作。由於完全實現了釋出/訂閱機制,使得從資料庫在任何地方同步樹時,可訂閱一個頻道並接收主伺服器完整的訊息釋出記錄。同步對讀取操作的可擴充套件性和資料冗餘很有幫助。

1.2 Redis解決了什麼問題呢?

看了上面的介紹已經對Redis有了一個瞭解,Redis是一個記憶體快取Key-Value資料庫,Redis的特點決定了他能解決什麼問題

  1. 基於記憶體速度快:適合使用到資料快取
  2. 資料型別多:可以解決多場景對資料儲存的問題
  3. 支援push/pop:可以做訂閱等操作
  4. 失效時間:適合做一些與時間相關的操作

但是在我們基本使用中來解決的問題大部分就是第一種

比如一個場景我傳送了一個驗證碼這個手機號需要和這個驗證碼繫結上,入庫當然是一個選擇但是不是最好的,我們可以把手機號與驗證碼的對應關係存放到redis中,然後在驗證的時候獲取這個驗證碼進行對比

在比如一個場景,我有一個介面介面是獲取所有使用者的資訊,這個使用者資訊可能處理起來需要花費20ms,但是更新不頻繁不需要實時,我們可以用redis作為這個介面的結果快取,第一次來獲取的時候走正常邏輯,後面都是從redis拿到結果返回,響應時間從20ms縮短到了1ms

當然使用場景還有很多這些就要大家來結合業務來思考解決方案了

2. Redis的安裝

簡單介紹了一下Redis以及他的使用場景之後我們來看下redis要如何安裝呢?

redis推薦環境為Liunx,windows當然也可以裝不過不推薦,我們這次也是使用Liunx環境系統為Centos6.5

Redis下載可以從上面Redsi原始碼地址的下載好的壓縮包,推薦2.8以上的版本,因為後面會使用到叢集搭建需要使用到Sentinel

//首先下載redis包並且解壓
wget http://download.redis.io/releases/redis-2.8.17.tar.gz
tar zxvf redis-2.8.17.tar.gz
cd redis-2.8.17

//進行編譯
make
//測試(可以跳過)
make test
//編譯安裝
make install

//redis提供的install指令碼可配置生成一個redis埠
cd utils
./install_server.sh
Please select the redis port for this instance: [6379]
Please select the redis config file name [/etc/redis/6379.conf]
Please select the redis log file name [/var/log/redis_6379.log]
Please select the data directory for this instance [/var/lib/redis/6379]
Please select the redis executable path [/usr/local/bin/redis-server]

//啟動redis,如果埠號是6380那麼就是redis_6380
service redis_6379 start

這個時候我們就可以測試一下是否可以連線上redis

//執行redis-cli預設埠號6379如果是6380需要-p 制定埠
redis-cli	

在命令列輸入info,如果看到了資訊,恭喜你已經成功執行起來了redis

更多的命令可以參考上面的redis命令大全

3. 總結

本節先介紹了redis是什麼怎麼用,下一節將介紹redis的配置中幾個比較重要的點,以及怎麼配置主從關係,那麼本節就到這裡了多謝大家的關注!

注:筆者能力有限有說的不對的地方希望大家能夠指出,也希望多多交流!

PhalApi官網QQ交流群:421032344 歡迎大家的加入!