Redis單機(jī)版搭建

首先放一張Redis的架構(gòu)圖:

在這里插入圖片描述

架構(gòu)細(xì)節(jié):

(1)所有的redis節(jié)點(diǎn)彼此互聯(lián)(PING-PONG機(jī)制),內(nèi)部使用二進(jìn)制協(xié)議優(yōu)化傳輸速度和帶寬.
(2)節(jié)點(diǎn)的fail是通過集群中超過半數(shù)的節(jié)點(diǎn)檢測失效時(shí)才生效.
(3)客戶端與redis節(jié)點(diǎn)直連,不需要中間proxy層.客戶端不需要連接集群所有節(jié)點(diǎn),連接集群中任何一個(gè)可用節(jié)點(diǎn)即可
(4)redis-cluster把所有的物理節(jié)點(diǎn)映射到[0-16383]slot上,cluster 負(fù)責(zé)維護(hù)node<->slot<->value
Redis 集群中內(nèi)置了 16384 個(gè)哈希槽,當(dāng)需要在 Redis 集群中放置一個(gè) key-value 時(shí),redis 先對(duì) key 使用 crc16 算法算出一個(gè)結(jié)果,然后把結(jié)果對(duì) 16384 求余數(shù),這樣每個(gè) key 都會(huì)對(duì)應(yīng)一個(gè)編號(hào)在 0-16383 之間的哈希槽,redis 會(huì)根據(jù)節(jié)點(diǎn)數(shù)量大致均等的將哈希槽映射到不同的節(jié)點(diǎn)。

所以搭建redis集群的時(shí)候最少要使用六臺(tái)服務(wù)器才可以(如果少于三臺(tái)服務(wù)器則不能投票)。因?yàn)槭窃谔摂M機(jī)上面模擬搭建,所以我們可以設(shè)置六個(gè)不同的端口來模擬六臺(tái)虛擬機(jī)。

  • 第一步:首先在虛擬機(jī)上面安裝一個(gè)Redis
    因?yàn)镽edis是c語言開發(fā)的,安裝redis需要c語言的編譯環(huán)境。如果沒有g(shù)cc需要在線安裝。yum install gcc-c++。
    我這里使用時(shí)Redis5.02的安裝包redis-5.0.2.tar.gz。大家可以直接去官網(wǎng)下載就可以。Redis官網(wǎng)然后將壓縮包上傳的虛擬機(jī)的服務(wù)器上,這里我用的是Centos7.0版本。具體的上傳和解壓就不演示了。
    把Redis解壓到/usr/local/的目錄下面。進(jìn)入Redis里面直接執(zhí)行make命令進(jìn)行編譯。(因?yàn)槔锩娴膸в蠱akefile)
    在這里插入圖片描述

編譯完成之后接下來就安裝 執(zhí)行命令代碼make install PREFIX=/usr/local/redis
在這里我們使用后端啟動(dòng)模式:這里需要進(jìn)入到我們剛才把Redis解壓的目錄中把redis.conf文件復(fù)制到編譯的目錄中

在這里插入圖片描述

復(fù)制完成之后需要修改redis.conf的配置。把這了的no改為yes
在這里插入圖片描述

接下來執(zhí)行執(zhí)行這條命令就可以后臺(tái)啟動(dòng)了

[root@localhost bin]# ./redis-server redis.conf

查看進(jìn)程是否啟動(dòng)成功[root@localhost bin]# ps aux|grep redis

查看進(jìn)程

好了,單機(jī)版的Redis版的已經(jīng)搭建成功了。

  • 連接服務(wù)測試:
    輸入這個(gè)指令:./redis-cli


    Redis服務(wù)器連接測試

    設(shè)置String類型的數(shù)據(jù),然后取出


    Redis數(shù)據(jù)測試

    OK,Redis單機(jī)版服務(wù)器搭建完成,下一篇文章講解集群搭建,其實(shí),集群版主要就是在不同的服務(wù)器上面安裝而已,模擬的話:需要在一臺(tái)服務(wù)器上面設(shè)置不同的端口。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1. Redis集群方案 Redis Cluster 集群模式通常具有高可用、可擴(kuò)展性、分布式、容錯(cuò)等特性。Red...
    Java黎先生閱讀 48,215評(píng)論 1 32
  • 一、redis簡介 Redis是一種高級(jí)key-value數(shù)據(jù)庫。它跟memcached類似,不過數(shù)據(jù)可以持久化,...
    面朝大海_1234閱讀 820評(píng)論 0 1
  • Redis是c語言開發(fā)的。 安裝redis需要c語言的編譯環(huán)境。如果沒有g(shù)cc需要在線安裝。yum install...
    Demons_LLL閱讀 288評(píng)論 0 0
  • 1 Redis介紹1.1 什么是NoSql為了解決高并發(fā)、高可擴(kuò)展、高可用、大數(shù)據(jù)存儲(chǔ)問題而產(chǎn)生的數(shù)據(jù)庫解決方...
    克魯?shù)吕?/span>閱讀 5,726評(píng)論 0 36
  • 最近因?yàn)樽约簯蚜藢殞?,就賴在了大姑家吃飯。每天除了吃得飽飽的,就是和我的小侄女兒一起玩?小侄女兒叫米果,之前我并...
    Jessica婷婷閱讀 240評(píng)論 0 0

友情鏈接更多精彩內(nèi)容