1. 程式人生 > >Redis 叢集搭建和測試教程

Redis 叢集搭建和測試教程


請注意,本教程使用於Redis3.0(包括3.0)以上版本

Redis叢集介紹

Redis 叢集是一個提供在多個Redis間節點間共享資料的程式集。

Redis叢集並不支援處理多個keys的命令,因為這需要在不同的節點間移動資料,從而達不到像Redis那樣的效能,在高負載的情況下可能會導致不可預料的錯誤.

Redis 叢集通過分割槽來提供一定程度的可用性,在實際環境中當某個節點宕機或者不可達的情況下繼續處理命令.Redis 叢集的優勢:

  • 自動分割資料到不同的節點上。
  • 整個叢集的部分節點失敗或者不可達的情況下能夠繼續處理命令。

Redis 叢集的資料分片

Redis 叢集沒有使用一致性hash, 而是引入了 雜湊槽

的概念.

Redis 叢集有16384個雜湊槽,每個key通過CRC16校驗後對16384取模來決定放置哪個槽.叢集的每個節點負責一部分hash槽,舉個例子,比如當前叢集有3個節點,那麼:

  • 節點 A 包含 0 到 5500號雜湊槽.
  • 節點 B 包含5501 到 11000 號雜湊槽.
  • 節點 C 包含11001 到 16384號雜湊槽.

這種結構很容易新增或者刪除節點. 比如如果我想新添加個節點D, 我需要從節點 A, B, C中得部分槽到D上. 如果我像移除節點A,需要將A中得槽移到B和C節點上,然後將沒有任何槽的A節點從叢集中移除即可.由於從一個節點將雜湊槽移動到另一個節點並不會停止服務,所以無論新增刪除或者改變某個節點的雜湊槽的數量都不會造成叢集不可用的狀態.

Redis 叢集的主從複製模型

為了使在部分節點失敗或者大部分節點無法通訊的情況下叢集仍然可用,所以叢集使用了主從複製模型,每個節點都會有N-1個複製品.

在我們例子中具有A,B,C三個節點的叢集,在沒有複製模型的情況下,如果節點B失敗了,那麼整個叢集就會以為缺少5501-11000這個範圍的槽而不可用.

然而如果在叢集建立的時候(或者過一段時間)我們為每個節點新增一個從節點A1,B1,C1,那麼整個叢集便有三個master節點和三個slave節點組成,這樣在節點B失敗後,叢集便會選舉B1為新的主節點繼續服務,整個叢集便不會因為槽找不到而不可用了

不過當B和B1 都失敗後,叢集是不可用的.

Redis 一致性保證

Redis 並不能保證資料的強一致性. 這意味這在實際中叢集在特定的條件下可能會丟失寫操作.

第一個原因是因為叢集是用了非同步複製. 寫操作過程:

  • 客戶端向主節點B寫入一條命令.
  • 主節點B向客戶端回覆命令狀態.
  • 主節點將寫操作複製給他得從節點 B1, B2 和 B3.

主節點對命令的複製工作發生在返回命令回覆之後, 因為如果每次處理命令請求都需要等待複製操作完成的話, 那麼主節點處理命令請求的速度將極大地降低 —— 我們必須在效能和一致性之間做出權衡。注意:Redis 叢集可能會在將來提供同步寫的方法。Redis 叢集另外一種可能會丟失命令的情況是叢集出現了網路分割槽, 並且一個客戶端與至少包括一個主節點在內的少數例項被孤立。

舉個例子 假設叢集包含 A 、 B 、 C 、 A1 、 B1 、 C1 六個節點, 其中 A 、B 、C 為主節點, A1 、B1 、C1 為A,B,C的從節點, 還有一個客戶端 Z1假設叢集中發生網路分割槽,那麼叢集可能會分為兩方,大部分的一方包含節點 A 、C 、A1 、B1 和 C1 ,小部分的一方則包含節點 B 和客戶端 Z1 .

Z1仍然能夠向主節點B中寫入, 如果網路分割槽發生時間較短,那麼叢集將會繼續正常運作,如果分割槽的時間足夠讓大部分的一方將B1選舉為新的master,那麼Z1寫入B中得資料便丟失了.

注意, 在網路分裂出現期間, 客戶端 Z1 可以向主節點 B 傳送寫命令的最大時間是有限制的, 這一時間限制稱為節點超時時間(node timeout), 是 Redis 叢集的一個重要的配置選項:

搭建並使用Redis叢集

搭建叢集的第一件事情我們需要一些執行在 叢集模式的Redis例項. 這意味這叢集並不是由一些普通的Redis例項組成的,叢集模式需要通過配置啟用,開啟叢集模式後的Redis例項便可以使用叢集特有的命令和特性了.

下面是一個最少選項的叢集的配置檔案:

port 7000
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes

檔案中的 cluster-enabled 選項用於開例項的叢集模式, 而 cluster-conf-file 選項則設定了儲存節點配置檔案的路徑, 預設值為 nodes.conf.節點配置檔案無須人為修改, 它由 Redis 叢集在啟動時建立, 並在有需要時自動進行更新。

要讓叢集正常運作至少需要三個主節點,不過在剛開始試用叢集功能時, 強烈建議使用六個節點: 其中三個為主節點, 而其餘三個則是各個主節點的從節點。

首先, 讓我們進入一個新目錄, 並建立六個以埠號為名字的子目錄, 稍後我們在將每個目錄中執行一個 Redis 例項:命令如下:

mkdir cluster-test
cd cluster-test
mkdir 7000 7001 7002 7003 7004 7005

在資料夾 7000 至 7005 中, 各建立一個 redis.conf 檔案, 檔案的內容可以使用上面的示例配置檔案, 但記得將配置中的埠號從 7000 改為與資料夾名字相同的號碼。

從 Redis Github 頁面 的 unstable 分支中取出最新的 Redis 原始碼, 編譯出可執行檔案 redis-server , 並將檔案複製到 cluster-test 資料夾, 然後使用類似以下命令, 在每個標籤頁中開啟一個例項:

cd 7000
../redis-server ./redis.conf

例項列印的日誌顯示, 因為 nodes.conf 檔案不存在, 所以每個節點都為它自身指定了一個新的 ID :

[82462] 26 Nov 11:56:55.329 * No cluster configuration found, I'm 97a3a64667477371c4479320d683e4c8db5858b1

例項會一直使用同一個 ID , 從而在叢集中保持一個獨一無二(unique)的名字。

以上是參考 http://www.redis.cn/topics/cluster-tutorial.html 這裡的說明,

下面是我自己的搭建叢集環境:

我電腦本來是Centos7系統就直接在這個上面搭建了,就沒有去弄虛擬機器;

這裡用到了我的電腦,在這上面搭建6個節點,創建出3個主節點(master)和3個從節點(slave)

Redis 採用的版本是 redis-3.2.8 版本

安裝過程:

1. 下載 Reis 並解壓

下載地址:https://redis.io/download

tar -zxvf redis-3.2.8.tar.gz

2. 編譯安裝

cd redis-3.2.8

make && make install

3. 建立 Redis 節點

首先在安裝目錄(redis-3.2.8) 下面建立一個 redis-cluster 目錄

mkdir redis-cluster

再在 redis-cluster 目錄下新建 6 個目錄,分別為: 7000 - 7005

mkdir 7000 7001 7002 7003 7004 7005

再將 redis-3.2.8/redis.conf 配置檔案 分別拷貝到 7000-7005目錄下

cp redis.conf redis-cluster/7000

cp redis.conf redis-cluster/7001

cp redis.conf redis-cluster/7002

cp redis.conf redis-cluster/7003

cp redis.conf redis-cluster/7004

cp redis.conf redis-cluster/7005

再分別修改這些配置檔案,修改內容格式如下:

port  7000       //埠7000,7001,7002,7003,7004,7005       
bind 本機ip      //預設ip為127.0.0.1 需要改為其他節點機器可訪問的ip 否則建立叢集時無法訪問對應的埠,無法建立叢集,我這裡沒有配置
daemonize    yes                          //redis後臺執行
pidfile  /var/run/redis_7000.pid          //pidfile檔案對應7000,7001,7002,7003,7004,7005  
cluster-enabled  yes                      //開啟叢集  把註釋#去掉
cluster-config-file  nodes_7000.conf      //叢集的配置  配置檔案首次啟動自動生成 7000,7001,7002,7003,7004,7005
cluster-node-timeout  15000               //請求超時  預設15秒,可自行設定
appendonly  yes                           //aof日誌開啟  有需要就開啟,它會每次寫操作都記錄一條日誌


4. 將 redis-trib.rb 複製到 /usr/local/bin 目錄下

redis-trib.rg 在 src 目錄下面

cp redis-trib.rg /usr/local/bin

5. 啟動各個節點,如果是分別放在6個電腦上面的話,就可以直接設定成自動啟動,不需要我們去啟動了。

[[email protected] redis-3.2.8]# redis-server redis-cluster/7002/redis.conf
[[email protected] redis-3.2.8]# redis-server redis-cluster/7003/redis.conf
[[email protected] redis-3.2.8]# redis-server redis-cluster/7004/redis.conf
[[email protected] redis-3.2.8]# redis-server redis-cluster/7005/redis.conf
[[email protected] redis-3.2.8]# redis-server redis-cluster/7006/redis.conf
[[email protected] redis-3.2.8]# redis-server redis-cluster/7001/redis.conf

6. 檢查 redis 的啟動情況, 可以發現後面有 cluster 標識。

[[email protected] redis-3.2.8]# ps -ef | grep redis

root      1364     1  0 08:51 ?        00:00:02 /usr/local/bin/redis-server 127.0.0.1:6379
root      5916     1  0 09:22 ?        00:00:00 redis-server 127.0.0.1:7000 [cluster]
root      5931     1  0 09:22 ?        00:00:00 redis-server 127.0.0.1:7001 [cluster]
root      6006     1  0 09:24 ?        00:00:00 redis-server 127.0.0.1:7002 [cluster]
root      6013     1  0 09:24 ?        00:00:00 redis-server 127.0.0.1:7003 [cluster]
root      6020     1  0 09:24 ?        00:00:00 redis-server 127.0.0.1:7004 [cluster]
root      6027     1  0 09:24 ?        00:00:00 redis-server 127.0.0.1:7005 [cluster]

7. 搭建叢集

現在我們已經有了六個正在執行中的 Redis 例項, 接下來我們需要使用這些例項來建立叢集, 併為每個節點編寫配置檔案。

通過使用 Redis 叢集命令列工具 redis-trib , 編寫節點配置檔案的工作可以非常容易地完成: redis-trib 位於 Redis 原始碼的 src 資料夾中,

它是一個 Ruby 程式, 這個程式通過向例項傳送特殊命令來完成建立新叢集, 檢查叢集, 或者對叢集進行重新分片(reshared)等工作。

因為這個工具是個 Ruby 程式,所以需要有 Ruby 的環境,而系統裡面沒有 Ruby 環境。

  • 安裝 Ruby 環境:

安裝命令如下:

yum -y install ruby ruby-devel rubygems rpm-build

gem install redis

上面在執行命令:gem install redis 的時候會卡在那裡不動,或者報錯:ERROR:  While executing gem ... (OpenSSL::SSL::SSLError)
    hostname "upyun.gems.ruby-china.org" does not match the server certificate

於是我在網上就找了下資料,卡在那裡不動是由於無法訪問網站導致,

所以就使用了淘寶的一個映象來安裝 redis 了,命令如下

[[email protected] bin]# gem sources -a https://ruby.taobao.org/
https://ruby.taobao.org/ added to sources
[[email protected] bin]# gem install redis
ERROR:  While executing gem ... (OpenSSL::SSL::SSLError)
    hostname "upyun.gems.ruby-china.org" does not match the server certificate
[[email protected] bin]# sudo gem install redis

Fetching: redis-3.3.3.gem (100%)

Successfully installed redis-3.3.3
Parsing documentation for redis-3.3.3
Installing ri documentation for redis-3.3.3
1 gem installed

注意:要加 sudo 否在就會報錯

ERROR:  While executing gem ... (OpenSSL::SSL::SSLError)
    hostname "upyun.gems.ruby-china.org" does not match the server certificate

原因
是由於openssl的版本過低或者缺少openssl,需要安裝openssl包

可以通過命令 openssl -version 來檢視是否有 openssl。

我的系統版本如下,應該是版本過低

[[email protected] ~]# openssl version
OpenSSL 1.0.1e-fips 11 Feb 2013

可以參考這裡的貼文: http://ruby-china.org/topics/3324

如果是要安裝 openssl 可以參考:http://blog.csdn.net/huang930528/article/details/51027915

  • 利用工具 redis-trib 建立叢集:

輸入如下命令:redis-trib.rb create --replicas 1 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005

中間會有一個輸入:輸入  yes 就可以了。

[[email protected] redis-3.2.8]# redis-trib.rb create --replicas 1 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005
>>> Creating cluster
>>> Performing hash slots allocation on 6 nodes...
Using 3 masters:
127.0.0.1:7000
127.0.0.1:7001
127.0.0.1:7002
Adding replica 127.0.0.1:7003 to 127.0.0.1:7000
Adding replica 127.0.0.1:7004 to 127.0.0.1:7001
Adding replica 127.0.0.1:7005 to 127.0.0.1:7002
M: 3965df7013f41eb1215e4fd9610f6900bbf911a1 127.0.0.1:7000
   slots:0-5460 (5461 slots) master
M: fe4601cbb9237b5d6c56c0d1582c15c1cc1144e2 127.0.0.1:7001
   slots:5461-10922 (5462 slots) master
M: c30c50d1bdc3112120f638411f8f03bcfad657e8 127.0.0.1:7002
   slots:10923-16383 (5461 slots) master
S: 987a19e035237473936819f80d5e2080ce4f5d3c 127.0.0.1:7003
   replicates 3965df7013f41eb1215e4fd9610f6900bbf911a1
S: 10b11408aa6d735b7d6dd3cddad6f9bf3725ff69 127.0.0.1:7004
   replicates fe4601cbb9237b5d6c56c0d1582c15c1cc1144e2
S: 565025fc12f7d731eddf15b49f56d083cc3690ce 127.0.0.1:7005
   replicates c30c50d1bdc3112120f638411f8f03bcfad657e8
Can I set the above configuration? (type 'yes' to accept): yes
>>> Nodes configuration updated
>>> Assign a different config epoch to each node
>>> Sending CLUSTER MEET messages to join the cluster
Waiting for the cluster to join.....
>>> Performing Cluster Check (using node 127.0.0.1:7000)
M: 3965df7013f41eb1215e4fd9610f6900bbf911a1 127.0.0.1:7000
   slots:0-5460 (5461 slots) master
   1 additional replica(s)
S: 10b11408aa6d735b7d6dd3cddad6f9bf3725ff69 127.0.0.1:7004
   slots: (0 slots) slave
   replicates fe4601cbb9237b5d6c56c0d1582c15c1cc1144e2
S: 565025fc12f7d731eddf15b49f56d083cc3690ce 127.0.0.1:7005
   slots: (0 slots) slave
   replicates c30c50d1bdc3112120f638411f8f03bcfad657e8
M: fe4601cbb9237b5d6c56c0d1582c15c1cc1144e2 127.0.0.1:7001
   slots:5461-10922 (5462 slots) master
   1 additional replica(s)
S: 987a19e035237473936819f80d5e2080ce4f5d3c 127.0.0.1:7003
   slots: (0 slots) slave
   replicates 3965df7013f41eb1215e4fd9610f6900bbf911a1
M: c30c50d1bdc3112120f638411f8f03bcfad657e8 127.0.0.1:7002
   slots:10923-16383 (5461 slots) master
   1 additional replica(s)
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.

可以看到自動進行了分配3個master和3個slaver

8. 使用叢集

開啟一個終端Terminal,連線埠為 7000 節點,因為是在一個系統上,所以可以不用寫引數  -h 127.0.0.1

連線方式:redis-cli -h 連線節點繫結的ip -c -p port

引數說明:-h 是配置檔案中配置的 bind 後面的IP地址

                    -c 意思是連線到叢集

                    -p port 埠

[[email protected] redis-3.2.8]# redis-cli -h 127.0.0.1 -c -p 7000
127.0.0.1:7000> set zero "7000"
-> Redirected to slot [10551] located at 127.0.0.1:7001
OK
127.0.0.1:7001> keys *
1) "zero"
127.0.0.1:7001>

然後再開啟一個新的終端 Terminal , 連線埠為7005節點。檢視在7000節點上面設定的key的值。

[[email protected] ~]# cd /home/software/redis/redis-3.2.8/
[[email protected] redis-3.2.8]# redis-cli -h 127.0.0.1 -c -p 7005
127.0.0.1:7005> get zero
-> Redirected to slot [10551] located at 127.0.0.1:7001
"7000"
127.0.0.1:7001>

redis-cli 對叢集的支援是非常基本的, 所以它總是依靠 Redis 叢集節點來將它轉向(redirect)至正確的節點。

9. 簡單說一下原理

redis cluster在設計的時候,就考慮到了去中心化,去中介軟體,也就是說,叢集中的每個節點都是平等的關係,都是對等的,每個節點都儲存各自的資料和整個叢集的狀態。每個節點都和其他所有節點連線,而且這些連線保持活躍,這樣就保證了我們只需要連線叢集中的任意一個節點,就可以獲取到其他節點的資料。

Redis 叢集沒有並使用傳統的一致性雜湊來分配資料,而是採用另外一種叫做雜湊槽 (hash slot)的方式來分配的。redis cluster 預設分配了 16384 個slot,當我們set一個key 時,會用CRC16演算法來取模得到所屬的slot,然後將這個key 分到雜湊槽區間的節點上,具體演算法就是:CRC16(key) % 16384。所以我們在測試的時候看到set 和 get 的時候,直接跳轉到了7001埠的節點。我們可以在建立叢集的時候擦看分配給主節點的槽的範圍,我的是:

M: 3965df7013f41eb1215e4fd9610f6900bbf911a1 127.0.0.1:7000
   slots:0-5460 (5461 slots) master
M: fe4601cbb9237b5d6c56c0d1582c15c1cc1144e2 127.0.0.1:7001
   slots:5461-10922 (5462 slots) master
M: c30c50d1bdc3112120f638411f8f03bcfad657e8 127.0.0.1:7002
   slots:10923-16383 (5461 slots) master
S: 987a19e035237473936819f80d5e2080ce4f5d3c 127.0.0.1:7003
   replicates 3965df7013f41eb1215e4fd9610f6900bbf911a1
S: 10b11408aa6d735b7d6dd3cddad6f9bf3725ff69 127.0.0.1:7004
   replicates fe4601cbb9237b5d6c56c0d1582c15c1cc1144e2
S: 565025fc12f7d731eddf15b49f56d083cc3690ce 127.0.0.1:7005
   replicates c30c50d1bdc3112120f638411f8f03bcfad657e8

Redis 叢集會把資料存在一個 master 節點,然後在這個 master 和其對應的salve 之間進行資料同步。當讀取資料時,也根據一致性雜湊演算法到對應的 master 節點獲取資料。只有當一個master 掛掉之後,才會啟動一個對應的 salve 節點,充當 master 。

需要注意的是:必須要3個或以上的主節點,否則在建立叢集時會失敗,並且當存活的主節點數小於總節點數的一半時,整個叢集就無法提供服務了。

好了,至此 Redis 叢集的搭建就成功了,測試也OK了。

參考文件:

http://www.redis.cn/topics/cluster-tutorial.html

http://www.cnblogs.com/wuxl360/p/5920330.html

http://blog.csdn.net/liu2012huan/article/details/49909939

http://blog.csdn.net/huang930528/article/details/51027915

http://blog.csdn.net/shuai825644975/article/details/53446621

相關推薦

Redis 叢集搭建測試教程

請注意,本教程使用於Redis3.0(包括3.0)以上版本 Redis叢集介紹 Redis 叢集是一個提供在多個Redis間節點間共享資料的程式集。 Redis叢集並不支援處理多個keys的命令,因為這需要在不同的節點間移動資料,從而達不到像Redis那樣的效能,在高

Redis 叢集搭建簡單使用教程

##一臺機器<br>ps -ef | grep redis root 61020 1 0 02:14 ? 00:00:01 redis-server 127.0.0.1:7000 [cluster] root 61024 1 0 02:14 ? 00:00:01 redis-ser

redis詳解——redis叢集搭建使用(二)

上一章我寫到redis簡單的介紹和如何單機的使用,當我們redis相當重要的時候那麼接下來就需要搭建一個叢集了。 1 Redis叢集的介紹 1.1 redis-cluster(叢集)架構圖 架構細節: (1)所有的redis節點彼此互聯(PING-PONG機制),

Linux下Redis叢集搭建測試

叢集搭建 準備條件 一臺已經配置好Redis服務的虛擬機器,地址為: 192.168.2.100:6379 克隆6臺,使用命令nmtui修改地址分別為: 192.168.2.101 192.168.2.102 192.168.2.103 1

hadoop學習第二天~Hadoop2.6.5完全分散式叢集搭建測試

環境配置: 系統 centos7 節點 192.168.1.111 namenode 192.168.1.115 datanode2 192.168.1.116 datanode3 java 環境 :

Redis: sentinel叢集搭建測試

Sentinel叢集的搭建和測試 1.1    測試環境     master:     127.0.0.16379    slave1:     127.0.0.1 6380    slave2:     127.0.0.1 6381    master-sentine

Redis叢集Redis-cluster搭建測試

一、Redis叢集部署 三臺物理機:172.20.0.17、172.20.0.18、172.20.0.19 二、安裝Redis 下載安裝redis壓縮包 解壓壓縮包,進入redis-5.0.2資料夾,執行命令./make install安裝redis mv redis-5.0.2 /usr/loca

在centos上搭建redis叢集並附測試(真叢集非偽叢集)

環境:centos6.5 x86  32位    redis3.2.8  ruby-2.2.3 一. redis叢集原理 redis是單執行緒,但是一般的作為快取使用的話,redis足夠了,因為它的讀寫速度太快了。 官方的一個簡單測試: 測試完成了50個併發執行100000

Linux下搭建Redis叢集環境及測試叢集 關閉redis

Redis叢集環境 Redis叢集相關概念 各redis節點彼此互聯(PING-PONG機制),內部使用二進位制協議優化傳輸速度和頻寬,無主機,客戶端隨意連線一個節點都可以 節點的fail是通過叢集中超過半數的節點檢測失效才生效 (1)領

用C、python手寫redis客戶端,相容redis叢集 (-MOVED-ASK),快速搭建redis叢集

     想沒想過,自己寫一個redis客戶端,是不是很難呢?   其實,並不是特別難。   首先,要知道redis服務端用的通訊協議,建議直接去官網看,部落格啥的其實也是從官網摘抄的,或者從其他部落格抄的(忽略)。   協議說明中文官網地址: http://www.redis.cn/topics/proto

SMM框架的搭建測試(Spring MVC+MyBatis)

meta true model spa const -i ssp pan div Spring MVC:MVC框架,通過Model-View-Controller模式很好的將數據,業務與展現進行分離。 MyBatis:數據持久層框架 我這裏使用的是MyEclipse 2

SSH框架的搭建測試(Spring + Struts2 + Hibernate)

conf work fault 項目 -i extends struts2 scrip map SSH框架實現了視圖、控制器、和模型的徹底分離,同時還實現了業務邏輯層與持久層的分離。 Spring實現了MVC中的 Controller的功能,Struts實現Web視圖的功能

Redis 叢集搭建簡述

環境 作業系統:CentOS 7.3 redis版本:Redis 3.2.8 兩臺主機,每臺主機上3個節點 基本步驟 下載解壓安裝包 # 下載解壓安裝包 wget http://download.redis.io/releases/redis-3.2.8.tar.gz

搭建redis叢集 Linux環境redis叢集搭建

Linux環境redis叢集搭建 集群后tomcat context.xml的配置 <!-- 叢集配置--> <Valve className="com.radiadesign.catalina.session.RedisSessionHandlerValve"

Redis叢集搭建與維護

一、概述     Redis3.0版本之後支援Cluster. 二、redis cluster安裝     1、下載和解包 cd /usr/local/ wget http://download.redis.io/releases/re

VSCode + PYQT5 + QtDesigner 環境搭建測試

目的:編寫Python桌面應用程式。 備註:也可以選擇VS2017+QtDesigner ,但更喜歡VSCode    第1步:安裝PyQt5和PyQt5-tools pip3 install -i https://mirrors.aliyun.com/pypi/simple/&n

Window7下Redis叢集搭建

在Windows系統下搭建Redis叢集:     需要4個部件:     Redis、Ruby語言執行環境、Redis的Ruby驅動redis-xxxx.gem、建立Redis叢集的工具redis-trib.rb      安裝Redis,並執行3個例

Redis學習】--Redis叢集搭建

文章目錄 1. Redis部署 1.1 安裝依賴環境 1.2 安裝 Redis 1.3 啟動Redis 前臺啟動: 後臺啟動: 1.4 測試客戶端可用情況:

redis叢集介紹、redis叢集搭建配置、redis叢集操作

一:redis叢集介紹 多個redis節點網路互聯,資料共享所有的節點都是一主一從(可以是多個從),其中從不提供服務,僅作為備用不支援同時處理多個鍵(如mset/mget),因為redis需要把鍵均勻分佈在各個節點上,併發量很高的情況下同時建立鍵值會降低效能並導致不可預測的行為。支援線上增加、刪除節點客戶端

MySQL 5.7 延遲復制環境搭建測試

uic glibc tin sed quic -s triggers def lee 安裝主從 MySQL 5.7 # 主 MySQL5.7 cd /usr/local tar -xvf mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz