? ? ? ? ? ? ? ? ? ?
? ? ? ? Redis是一個(gè)開源的使用ANSIC語言編寫、支持網(wǎng)絡(luò)、可基于內(nèi)存亦可持久化的日志型砚作、Key-Value數(shù)據(jù)庫窘奏,并提供多種語言的API嘹锁。
前天剛學(xué)的葫录,現(xiàn)在就來裝逼一波,順便做下筆記领猾。redis的下載安裝點(diǎn)這里米同。
第一次寫文章,可能表達(dá)不清楚摔竿。面粮。。继低。熬苍。哈哈
現(xiàn)在的版本出到3.2.1了,但我用的是3.0.5,(因?yàn)槭且郧霸缇脱b了袁翁,偷個(gè)懶柴底,基本都差不多)。
下載解壓編譯安裝之后粱胜,進(jìn)入安裝后的目錄
說到集群我也只是只菜鳥柄驻,redis根目錄下有一個(gè)redis.conf。我們把它拷貝到其他地方焙压,目的當(dāng)然是啟動不同端口的redis服務(wù)器了
我為了方便直接在/usr/local/ 下建立一個(gè)redis-server文件夾鸿脓,拷貝到其中。為了方便我把redis目錄src下的redis-server涯曲,redis-cli,redis-sentinel這3個(gè)東東野哭,建立軟連接放在redis-sever下具體看圖
我把redis.conf 復(fù)制3份如上圖所式的redis6379.conf ,redis6380.conf,redis6381.conf后面的數(shù)字代表的是啟動的端口vim 修改3個(gè)配置文件只需要修改 port,daemonize,logfile,dbfilename這4個(gè)值
接下來就是啟動redis服務(wù)器了幻件,然后連接客戶端
開啟3個(gè)客戶端連接各個(gè)不同端口的服務(wù)器拨黔,身份都是master。
通過slaveof ip 端口 的命令蓉驹,把6380和6381當(dāng)slave的身份。我現(xiàn)在是通過虛擬機(jī)本地測試
現(xiàn)在在6379端口設(shè)置值揪利,我們測試在6380和6381端口能不能獲取值
當(dāng)master服務(wù)器死機(jī)了态兴,另外兩個(gè)從服務(wù)器會不會爭奪主呢(好像好多圖了,我就不測試了疟位,有興趣的同學(xué)可以試試瞻润,把6379 shutdown 然后看看另外兩個(gè)的身份,然后當(dāng)主機(jī)又重啟的時(shí)候又會發(fā)生什么∩茏玻或者從機(jī)shutdown正勒,重啟之后又是怎樣的,有興趣的同學(xué)自己測試測試傻铣,如果我把答案說出來了章贞,自己不動手,還是會忘記的)
接下來呢非洲,咱們來講講“哨兵模式”
貌似挺長的呢鸭限,不知道有沒有人能看下來,文采不夠两踏,表達(dá)不夠清楚败京,自己也挺郁悶的,怪我讀書少梦染,我女機(jī)油說赡麦,人丑要多讀書,但我人應(yīng)該不丑帕识,所以讀書有點(diǎn)少泛粹。。哈哈渡冻,跑題了戚扳。
哨兵模式簡單的說呢,就是反客為主族吻,就是主機(jī)死了帽借,從所有從機(jī)中選出一個(gè)主機(jī),我們在redis6379.conf 的同目錄下創(chuàng)建一個(gè)sentinel.conf
$ vim sentinel.conf
編輯內(nèi)容如下:sentinel monitor localhost6379(這里隨便取一個(gè)主機(jī)的名字) ?127.0.0.1 6379 1超歌,如下圖
保存并退出
這內(nèi)容的簡單意思:就是監(jiān)控6379這主機(jī)掛了的時(shí)候砍艾,從機(jī)來投票,誰得票數(shù)多誰就是主機(jī)巍举!
啟動哨兵
如果如上圖所示脆荷,說明啟動成功
現(xiàn)在我們讓6379死機(jī),看一下哨兵會發(fā)生什么
看看哨兵的情況懊悯,是否發(fā)生變化
我們可以看到6381變成主機(jī)了
然后當(dāng)6379啟動的時(shí)候蜓谋,變成了從機(jī),而不是主機(jī)了
好多圖炭分,我怕發(fā)不出去就虧大發(fā)了桃焕,筆記放這了,忘記的時(shí)候回來看看E趺9厶谩让网!