青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Fork me on GitHub
隨筆 - 215  文章 - 13  trackbacks - 0
<2016年8月>
31123456
78910111213
14151617181920
21222324252627
28293031123
45678910


專注即時(shí)通訊及網(wǎng)游服務(wù)端編程
------------------------------------
Openresty 官方模塊
Openresty 標(biāo)準(zhǔn)模塊(Opm)
Openresty 三方模塊
------------------------------------
本博收藏大部分文章為轉(zhuǎn)載,并在文章開頭給出了原文出處,如有再轉(zhuǎn),敬請(qǐng)保留相關(guān)信息,這是大家對(duì)原創(chuàng)作者勞動(dòng)成果的自覺尊重!!如為您帶來不便,請(qǐng)于本博下留言,謝謝配合。

常用鏈接

留言簿(1)

隨筆分類

隨筆檔案

相冊(cè)

Awesome

Blog

Book

GitHub

Link

搜索

  •  

積分與排名

  • 積分 - 220955
  • 排名 - 117

最新評(píng)論

閱讀排行榜

http://blog.csdn.net/benxiaohai529/article/details/52848414

前言

前些天一直在忙線上環(huán)境部署的事情,初步想的是,nginx(keepalive雙機(jī)熱備)+3(tomcat)+2redis(雙機(jī)熱備),但是后來由于阿里云服務(wù)器經(jīng)典網(wǎng)絡(luò)不提供虛擬IP,無法使用keepalive,nginx雙機(jī)熱備只能暫時(shí)先放棄,退而求其次,采用nginx+3tomcat+2redis(雙機(jī)熱備)。nginx+tomcat由于之前配置過,所以重點(diǎn)就落在Redis雙機(jī)熱備上,畢竟是線上系統(tǒng),適當(dāng)?shù)目篂?zāi)能力還是需要的,咱可不能像測試系統(tǒng)那么去玩,否則黑鍋就有的背了,畢竟碼代碼賺點(diǎn)生活費(fèi)也不容易。

在網(wǎng)上也查了一些資料,redis集群實(shí)現(xiàn)大概有以下幾種方式:

1.redis-cluster,官方提供的集群搭建方案(過于重量級(jí),比較適合后期數(shù)據(jù)量較大的時(shí)候的使用)

2.redis+keepalive(由于我們使用的阿里云服務(wù)器不支持虛擬IP,所以這套方案也就夭折了)

3.redis+zookeeper(需要引入zookeeper,對(duì)現(xiàn)有代碼變動(dòng)較大)

4.redis+sentinel(redis自帶監(jiān)控中間件)(代碼變動(dòng)小,配置少,而且能滿足雙機(jī)熱備的需求)

基于我們目前的情況以及需求,經(jīng)過初略對(duì)比,我們團(tuán)隊(duì)決定選用第四種方案redis+sentinel實(shí)現(xiàn)雙機(jī)熱備。

準(zhǔn)備工作

1.安裝redis-001(主)

$ wget http://download.redis.io/releases/redis-3.2.3.tar.gz $ tar xzf redis-3.2.3.tar.gz $ mv redis-3.2.3 redis-001 $ cd redis-001 $ make

2.安裝redis-002(從)

$ wget http://download.redis.io/releases/redis-3.2.3.tar.gz $ tar xzf redis-3.2.3.tar.gz $ mv redis-3.2.3 redis-002 $ cd redis-002 $ make

3.修改redis-002端口為6380

$ cd /usr/tools/redis-002/ $ vim redis.conf ...找到port 6379改為6380...

4.修改redis默認(rèn)配置

a.關(guān)閉ip綁定,注釋redis.conf中bind 127.0.0.1

b.關(guān)閉保護(hù)模式,將protected-mode yes改為protected-mode no

5.啟動(dòng)redis-001,redis-002

$ cd tools/redis-001/ $ ./src/redis-server redis.conf

出現(xiàn)以下信息就表示啟動(dòng)成功了:

12513:M 09 Oct 11:15:49.061 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect. 12513:M 09 Oct 11:15:49.061 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled. 12513:M 09 Oct 11:15:49.061 * DB loaded from disk: 0.000 seconds 12513:M 09 Oct 11:15:49.061 * The server is now ready to accept connections on port 6379 

redis主從復(fù)制

1.redis 復(fù)制的特點(diǎn)

    1). 同一個(gè)Master可以同步多個(gè)Slaves。
    2). Slave同樣可以接受其它Slaves的連接和同步請(qǐng)求,這樣可以有效的分載Master的同步壓力。因此我們可以將Redis的Replication架構(gòu)視為圖結(jié)構(gòu)。
    3). Master Server是以非阻塞的方式為Slaves提供服務(wù)。所以在Master-Slave同步期間,客戶端仍然可以提交查詢或修改請(qǐng)求。
    4). Slave Server同樣是以非阻塞的方式完成數(shù)據(jù)同步。在同步期間,如果有客戶端提交查詢請(qǐng)求,Redis則返回同步之前的數(shù)據(jù)。
    5). 為了分載Master的讀操作壓力,Slave服務(wù)器可以為客戶端提供只讀操作的服務(wù),寫服務(wù)仍然必須由Master來完成。即便如此,系統(tǒng)的伸縮性還是得到了很大的提高。
    6). Master可以將數(shù)據(jù)保存操作交給Slaves完成,從而避免了在Master中要有獨(dú)立的進(jìn)程來完成此操作。

2.redis復(fù)制原理

    在Slave啟動(dòng)并連接到Master之后,它將主動(dòng)發(fā)送一個(gè)SYNC命令。此后Master將啟動(dòng)后臺(tái)存盤進(jìn)程,同時(shí)收集所有接收到的用于修改數(shù)據(jù)集的命令,在后臺(tái)進(jìn)程執(zhí)行完畢后,Master將傳送整個(gè)數(shù)據(jù)庫文件到Slave,以完成一次完全同步。而Slave服務(wù)器在接收到數(shù)據(jù)庫文件數(shù)據(jù)之后將其存盤并加載到內(nèi)存中。此后,Master繼續(xù)將所有已經(jīng)收集到的修改命令,和新的修改命令依次傳送給Slaves,Slave將在本次執(zhí)行這些數(shù)據(jù)修改命令,從而達(dá)到最終的數(shù)據(jù)同步。
    如果Master和Slave之間的鏈接出現(xiàn)斷連現(xiàn)象,Slave可以自動(dòng)重連Master,但是在連接成功之后,一次完全同步將被自動(dòng)執(zhí)行。

3.redis主從配置

前面也說了,redis主從配置很簡單,只需要一個(gè)slaveof就可以搞定。

連接redis-002,執(zhí)行slaveof 192.168.231.130 6379:

C:\Users\lenovo\Desktop\redis>D: D:\>cd D:\Program Files\Redis-x64-3.0.5 D:\Program Files\Redis-x64-3.0.5>redis-cli.exe -h 192.168.231.130 -p 6380 192.168.231.130:6380> slaveof 192.168.231.130 6379 OK 192.168.231.130:6380>

執(zhí)行完成后,可以看到服務(wù)器上redis-001控制臺(tái)輸出以下內(nèi)容:

12513:M 09 Oct 11:15:49.061 * DB loaded from disk: 0.000 seconds 12513:M 09 Oct 11:15:49.061 * The server is now ready to accept connections on port 6379 12513:M 09 Oct 11:41:59.371 * Slave 192.168.231.130:6380 asks for synchronization 12513:M 09 Oct 11:41:59.371 * Full resync requested by slave 192.168.231.130:6380 12513:M 09 Oct 11:41:59.371 * Starting BGSAVE for SYNC with target: disk 12513:M 09 Oct 11:41:59.372 * Background saving started by pid 13673 13673:C 09 Oct 11:41:59.388 * DB saved on disk 13673:C 09 Oct 11:41:59.388 * RDB: 6 MB of memory used by copy-on-write 12513:M 09 Oct 11:41:59.462 * Background saving terminated with success 12513:M 09 Oct 11:41:59.462 * Synchronization with slave 192.168.231.130:6380 succeeded

redis-002控制臺(tái)輸出:

13581:S 09 Oct 11:41:59.361 * Connecting to MASTER 192.168.231.130:6379 13581:S 09 Oct 11:41:59.370 * MASTER <-> SLAVE sync started 13581:S 09 Oct 11:41:59.370 * Non blocking connect for SYNC fired the event. 13581:S 09 Oct 11:41:59.371 * Master replied to PING, replication can continue... 13581:S 09 Oct 11:41:59.371 * Partial resynchronization not possible (no cached master) 13581:S 09 Oct 11:41:59.374 * Full resync from master: e2f4e2608956ea6392482c2e0a9429efdebd2b53:1 13581:S 09 Oct 11:41:59.462 * MASTER <-> SLAVE sync: receiving 76 bytes from master 13581:S 09 Oct 11:41:59.463 * MASTER <-> SLAVE sync: Flushing old data 13581:S 09 Oct 11:41:59.463 * MASTER <-> SLAVE sync: Loading DB in memory 13581:S 09 Oct 11:41:59.463 * MASTER <-> SLAVE sync: Finished with success 

但是這樣做的話,重啟redis-002后又會(huì)復(fù)原,所以通常我們會(huì)直接修改redis-002配置文件redis.conf,在末尾加上slaveof 192.168.231.130 6379部分,就永久有效了。

現(xiàn)在我們往redis-001中寫入數(shù)據(jù),就可以從redis-002中查詢出來了,我們來測試一下,往redis-001中寫入key為name,value為osc的數(shù)據(jù)。

192.168.231.130:6379> set name osc OK 192.168.231.130:6379> keys * 1) "name" 192.168.231.130:6379>

查詢r(jià)edis-002中的數(shù)據(jù),會(huì)發(fā)現(xiàn)同樣存在name的key,并且值為osc 

192.168.231.130:6380> keys * 1) "name" 192.168.231.130:6380> get name "osc" 192.168.231.130:6380>

到目前為止,redis主從復(fù)制已經(jīng)配置成功了,接下來就要開始重點(diǎn)工作,配置雙機(jī)熱備。

redis+sentinel雙機(jī)熱備

1.理論概念

    雙機(jī)熱備特指基于高可用系統(tǒng)中的兩臺(tái)服務(wù)器的熱備(或高可用),因兩機(jī)高可用在國內(nèi)使用較多,故得名雙機(jī)熱備,雙機(jī)高可用按工作中的切換方式分為:主-備方式(Active-Standby方式)和雙主機(jī)方式(Active-Active方式),主-備方式即指的是一臺(tái)服務(wù)器處于某種業(yè)務(wù)的激活狀態(tài)(即Active狀態(tài)),另一臺(tái)服務(wù)器處于該業(yè)務(wù)的備用狀態(tài)(即Standby狀態(tài))。而雙主機(jī)方式即指兩種不同業(yè)務(wù)分別在兩臺(tái)服務(wù)器上互為主備狀態(tài)(即Active-Standby和Standby-Active狀態(tài))。

大白話就是,當(dāng)主服務(wù)器掛了之后,從服務(wù)器立馬切換為主服務(wù)器繼續(xù)工作,當(dāng)原先主服務(wù)器修復(fù)完善啟動(dòng)后,會(huì)自動(dòng)充當(dāng)從服務(wù)器的角色繼續(xù)工作。這樣就很好的避免了,由于一臺(tái)主機(jī)出現(xiàn)故障,系統(tǒng)掛點(diǎn)的現(xiàn)象出現(xiàn)。

Sentinel(哨兵)是用于監(jiān)控redis集群中Master狀態(tài)的工具,已經(jīng)集成在redis官方版本中,可以直接配置使用。

2.Sentinel命令

       PING :返回 PONG 。
       SENTINEL masters :列出所有被監(jiān)視的主服務(wù)器,以及這些主服務(wù)器的當(dāng)前狀態(tài);
       SENTINEL slaves <master name> :列出給定主服務(wù)器的所有從服務(wù)器,以及這些從服務(wù)器的當(dāng)前狀態(tài);
       SENTINEL get-master-addr-by-name <master name> : 返回給定名字的主服務(wù)器的 IP 地址和端口號(hào)。 如果這個(gè)主服務(wù)器正在執(zhí)行故障轉(zhuǎn)移操作, 或者針對(duì)這個(gè)主服務(wù)器的故障轉(zhuǎn)移操作已經(jīng)完成, 那么這個(gè)命令返回新的主服務(wù)器的 IP 地址和端口號(hào);
       SENTINEL reset <pattern> : 重置所有名字和給定模式 pattern 相匹配的主服務(wù)器。 pattern 參數(shù)是一個(gè) Glob 風(fēng)格的模式。 重置操作清楚主服務(wù)器目前的所有狀態(tài), 包括正在執(zhí)行中的故障轉(zhuǎn)移, 并移除目前已經(jīng)發(fā)現(xiàn)和關(guān)聯(lián)的, 主服務(wù)器的所有從服務(wù)器和 Sentinel ;
       SENTINEL failover <master name> : 當(dāng)主服務(wù)器失效時(shí), 在不詢問其他 Sentinel 意見的情況下, 強(qiáng)制開始一次自動(dòng)故障遷移。

客戶端可以通過SENTINEL get-master-addr-by-name <master name>獲取當(dāng)前的主服務(wù)器IP地址和端口號(hào),以及SENTINEL slaves <master name>獲取所有的Slaves信息

3.雙機(jī)熱備配置

a.關(guān)閉redis-001與redis-002

b.在redis-001和redis-002配置sentinel.conf中加上以下配置信息:

sentinel monitor mymaster 192.168.231.130 6379 1

c.修改redis-002 sentinel.conf監(jiān)聽端口:

$ cd /usr/tools/redis-002/ $ vim sentinel.conf ...找到port 26379改為26380... port 26380

d.分別啟動(dòng)redis-001(主)與redis-002(從),redis 服務(wù)和sentinel服務(wù)

​$ cd /usr/tools/redis-002/ $ ./src/redis-server redis.conf $ ./src/redis-sentinel sentinel.conf
​$ cd /usr/tools/redis-001/ $ ./src/redis-server redis.conf $ ./src/redis-sentinel sentinel.conf

此時(shí)在主從redis,sentinel控制臺(tái)會(huì)出現(xiàn)以下信息:

14677:X 09 Oct 14:04:49.633 # Sentinel ID is 7b8fdc1e5e47426b0d62a3ddd22ede0fd712f452 14677:X 09 Oct 14:04:49.633 # +monitor master mymaster 192.168.231.130 6379 quorum 1 14677:X 09 Oct 14:04:49.634 * +slave slave 192.168.231.130:6380 192.168.231.130 6380 @ mymaster 192.168.231.130 6379 14677:X 09 Oct 14:05:53.727 * +sentinel sentinel 31e660153984b606951c564395bdc8e193943f0b 192.168.231.130 26380 @ mymaster 192.168.231.130 6379

e.測試結(jié)果:

連接主服務(wù)器sentinel,注意端口是sentinel.conf中配置的端口。

根據(jù)前面描述的sentinel命令查詢主服務(wù)器信息:

192.168.231.130:26379> SENTINEL masters 1)  1) "name"     2) "mymaster"     3) "ip"     4) "192.168.231.130"     5) "port"     6) "6379"     7) "runid"     8) "fafb94fe9bff119e8a97f9183e3bcb5561933631"     9) "flags"    10) "master"    11) "link-pending-commands"    12) "0"    13) "link-refcount"    14) "1"    15) "last-ping-sent"    16) "0"    17) "last-ok-ping-reply"    18) "671"    19) "last-ping-reply"    20) "671"    21) "down-after-milliseconds"    22) "10000"    23) "info-refresh"    24) "4904"    25) "role-reported"    26) "master"    27) "role-reported-time"    28) "205675"    29) "config-epoch"    30) "0"    31) "num-slaves"    32) "1"    33) "num-other-sentinels"    34) "1"    35) "quorum"    36) "1"    37) "failover-timeout"    38) "180000"    39) "parallel-syncs"    40) "1" 192.168.231.130:26379>

查詢從服務(wù)器信息:

192.168.231.130:26379> SENTINEL slaves mymaster 1)  1) "name"     2) "192.168.231.130:6380"     3) "ip"     4) "192.168.231.130"     5) "port"     6) "6380"     7) "runid"     8) "feabcfa65e69778e877ca0bd95adb9d642f6522f"     9) "flags"    10) "slave"    11) "link-pending-commands"    12) "0"    13) "link-refcount"    14) "1"    15) "last-ping-sent"    16) "0"    17) "last-ok-ping-reply"    18) "928"    19) "last-ping-reply"    20) "928"    21) "down-after-milliseconds"    22) "10000"    23) "info-refresh"    24) "7332"    25) "role-reported"    26) "slave"    27) "role-reported-time"    28) "388802"    29) "master-link-down-time"    30) "0"    31) "master-link-status"    32) "ok"    33) "master-host"    34) "192.168.231.130"    35) "master-port"    36) "6379"    37) "slave-priority"    38) "100"    39) "slave-repl-offset"    40) "472844" 192.168.231.130:26379>

現(xiàn)在,我們來關(guān)閉端口為6379主redis-001服務(wù)器,看看會(huì)出現(xiàn)什么情況,此時(shí)redis-002控制臺(tái)會(huì)出現(xiàn)以下信息:

14735:S 09 Oct 14:15:47.618 # Error condition on socket for SYNC: Connection refused 14735:S 09 Oct 14:15:48.628 * Connecting to MASTER 192.168.231.130:6379 14735:S 09 Oct 14:15:48.628 * MASTER <-> SLAVE sync started 14735:S 09 Oct 14:15:48.628 # Error condition on socket for SYNC: Connection refused 14735:S 09 Oct 14:15:49.638 * Connecting to MASTER 192.168.231.130:6379 14735:S 09 Oct 14:15:49.638 * MASTER <-> SLAVE sync started 14735:S 09 Oct 14:15:49.638 # Error condition on socket for SYNC: Connection refused 14735:S 09 Oct 14:15:50.648 * Connecting to MASTER 192.168.231.130:6379 14735:S 09 Oct 14:15:50.648 * MASTER <-> SLAVE sync started 14735:S 09 Oct 14:15:50.648 # Error condition on socket for SYNC: Connection refused 14735:S 09 Oct 14:15:51.659 * Connecting to MASTER 192.168.231.130:6379 14735:S 09 Oct 14:15:51.659 * MASTER <-> SLAVE sync started 14735:S 09 Oct 14:15:51.659 # Error condition on socket for SYNC: Connection refused 14735:S 09 Oct 14:15:52.669 * Connecting to MASTER 192.168.231.130:6379 14735:S 09 Oct 14:15:52.669 * MASTER <-> SLAVE sync started 14735:S 09 Oct 14:15:52.669 # Error condition on socket for SYNC: Connection refused 14735:M 09 Oct 14:15:53.459 * Discarding previously cached master state. 14735:M 09 Oct 14:15:53.459 * MASTER MODE enabled (user request from 'id=5 addr=192.168.231.130:53187 fd=7 name=sentinel-7b8fdc1e-cmd age=23 idle=0 flags=x db=0 sub=0 psub=0 multi=3 qbuf=0 qbuf-free=32768 obl=36 oll=0 omem=0 events=r cmd=exec') 14735:M 09 Oct 14:15:53.463 # CONFIG REWRITE executed with success.

從日志可以看出,服務(wù)器會(huì)經(jīng)過多次連接主服務(wù)器失敗后,判定主服務(wù)器故障,會(huì)對(duì)配置文件進(jìn)行重寫(CONFIG REWRITE executed with success),我們?cè)偃タ纯磸姆?wù)器的配置文件redis.conf,會(huì)發(fā)現(xiàn)之前在末尾加上的slaveof 192.168.231.130 6379不見了,這就說明當(dāng)sentinel監(jiān)測到主服務(wù)器掛掉之后,自動(dòng)將從服務(wù)器切換為主服務(wù)器。

我們?cè)賮砜纯粗鲝姆?wù)器sentinel控制臺(tái)輸出了信息:

主sentinel:

14677:X 09 Oct 14:15:54.384 # +promoted-slave slave 192.168.231.130:6380 192.168.231.130 6380 @ mymaster 192.168.231.130 6379 14677:X 09 Oct 14:15:54.384 # +failover-state-reconf-slaves master mymaster 192.168.231.130 6379 14677:X 09 Oct 14:15:54.456 # +failover-end master mymaster 192.168.231.130 6379 14677:X 09 Oct 14:15:54.456 # +switch-master mymaster 192.168.231.130 6379 192.168.231.130 6380 14677:X 09 Oct 14:15:54.456 * +slave slave 192.168.231.130:6379 192.168.231.130 6379 @ mymaster 192.168.231.130 6380 14677:X 09 Oct 14:16:04.479 # +sdown slave 192.168.231.130:6379 192.168.231.130 6379 @ mymaster 192.168.231.130 6380

從sentinel:

14688:X 09 Oct 14:15:53.223 # +sdown master mymaster 192.168.231.130 6379 14688:X 09 Oct 14:15:53.223 # +odown master mymaster 192.168.231.130 6379 #quorum 1/1 14688:X 09 Oct 14:15:53.223 # Next failover delay: I will not start a failover before Sun Oct  9 14:21:53 2016 14688:X 09 Oct 14:15:54.461 # +config-update-from sentinel 7b8fdc1e5e47426b0d62a3ddd22ede0fd712f452 192.168.231.130 26379 @ mymaster 192.168.231.130 6379 14688:X 09 Oct 14:15:54.461 # +switch-master mymaster 192.168.231.130 6379 192.168.231.130 6380 14688:X 09 Oct 14:15:54.461 * +slave slave 192.168.231.130:6379 192.168.231.130 6379 @ mymaster 192.168.231.130 6380 14688:X 09 Oct 14:16:04.483 # +sdown slave 192.168.231.130:6379 192.168.231.130 6379 @ mymaster 192.168.231.130 6380 

從上面日志信息可以看出,主從確實(shí)已經(jīng)切換成功了,最后我們來看看實(shí)際情況是不是那樣的,打開命令行執(zhí)行查詢主從信息命令,看看會(huì)出現(xiàn)什么結(jié)果:

192.168.231.130:26379> SENTINEL get-master-addr-by-name mymaster 1) "192.168.231.130" 2) "6380" 192.168.231.130:26379>
192.168.231.130:26379> SENTINEL masters 1)  1) "name"     2) "mymaster"     3) "ip"     4) "192.168.231.130"     5) "port"     6) "6380"     7) "runid"     8) "bb4fe3dece04db30c29f6650f1edd4d3689da751"     9) "flags"    10) "master"    11) "link-pending-commands"    12) "0"    13) "link-refcount"    14) "1"    15) "last-ping-sent"    16) "0"    17) "last-ok-ping-reply"    18) "14"    19) "last-ping-reply"    20) "14"    21) "down-after-milliseconds"    22) "10000"    23) "info-refresh"    24) "4648"    25) "role-reported"    26) "master"    27) "role-reported-time"    28) "847746"    29) "config-epoch"    30) "1"    31) "num-slaves"    32) "1"    33) "num-other-sentinels"    34) "1"    35) "quorum"    36) "1"    37) "failover-timeout"    38) "180000"    39) "parallel-syncs"    40) "1" 192.168.231.130:26379>

到這里基本已經(jīng)部署完畢了,再去啟動(dòng)原先主服務(wù)器redis-001,會(huì)發(fā)現(xiàn)此時(shí)的redis-001變成了從服務(wù)器,接下來的內(nèi)容由于與前面重復(fù)較多,我就不演示了。

注意事項(xiàng)

1.一步一步來,先配置主從復(fù)制,再配置主從切換

2.啟動(dòng)順序不要弄錯(cuò)了,先啟動(dòng)主服務(wù)器的redis與sentinel,再啟動(dòng)從服務(wù)器redis與sentinel,如果遇到失敗情況,由于sentinel啟動(dòng)后會(huì)自動(dòng)修改和生成部分配置信息,為避免沖突浪費(fèi)時(shí)間,建議直接刪除配置文件,重新配置。

3.如果redis有密碼的話,需要在主從服務(wù)器redis.conf中都加上:

masterauth <password>

以及在主從服務(wù)器sentinel.conf加上:

sentinel auth-pass mymaster <password>

兩者密碼一致。

4.daemonize yes,啟用保護(hù)進(jìn)程
protected-mode no,關(guān)閉保護(hù)模式

另附

具體程序代碼修改部分,可以參考《JedisSentinelPool的相關(guān)配置與操作》

交叉參考:

http://www.cnblogs.com/davidwang456/p/3525090.html
http://blog.csdn.net/mingjie1212/article/details/54296858
http://blog.csdn.net/qguanri/article/details/51120178
https://my.oschina.net/ydsakyclguozi/blog/515050


posted on 2017-07-10 10:25 思月行云 閱讀(748) 評(píng)論(0)  編輯 收藏 引用 所屬分類: Redis\Mongo
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国产精品夜夜夜| 亚洲精品一线二线三线无人区| 亚洲欧美在线网| 久久香蕉精品| 午夜精品久久久久久久久久久久久 | 免费日韩视频| 一区二区三区视频在线播放| 亚洲女优在线| 伊人成人在线视频| 在线精品视频在线观看高清| 国产精品久久婷婷六月丁香| 国产精品久久久一区二区三区 | 欧美一区二区在线看| 日韩视频在线一区二区| 精品999久久久| 樱花yy私人影院亚洲| 国产综合激情| 国产亚洲欧美日韩在线一区| 国产精品一区二区视频| 国产精品美女久久久久av超清 | 国产午夜精品理论片a级大结局 | 亚洲国产欧美久久| 亚洲东热激情| 一区二区高清在线| 欧美**人妖| 久久久久一区二区三区| 久久精品91| 久久精品国产综合精品| 欧美14一18处毛片| 极品少妇一区二区三区| 亚洲国产成人在线视频| 亚洲欧美春色| 99视频在线观看一区三区| 亚洲视频在线二区| 蜜臀91精品一区二区三区| 欧美 日韩 国产一区二区在线视频 | 亚洲婷婷在线| 国产精品美女| 午夜国产精品视频| 久久一区二区三区四区五区| 欧美日韩综合网| 亚洲国产欧美一区| 免费不卡亚洲欧美| 久久精品国产99国产精品| 国产欧美一区二区精品秋霞影院| 一区二区激情| 亚洲婷婷综合色高清在线| 欧美日韩亚洲一区二区三区在线观看 | 亚洲人体1000| 欧美激情视频一区二区三区不卡| 午夜国产欧美理论在线播放| 国产亚洲高清视频| 久久激情视频久久| 久久综合色婷婷| 亚洲精品中文在线| 亚洲视屏在线播放| 韩国精品在线观看| 亚洲福利在线观看| 欧美日韩中文另类| 久久亚洲视频| 国产精品国产三级国产aⅴ浪潮| 亚洲欧美99| 欧美理论电影网| 亚洲在线中文字幕| 另类专区欧美制服同性| 亚洲欧美久久久| 欧美视频在线免费| 日韩午夜中文字幕| 欧美大片在线观看一区二区| 欧美黑人多人双交| 一区二区三区蜜桃网| 国产精品草草| 欧美一区二区福利在线| 欧美96在线丨欧| 亚洲一区二区在线播放| 亚洲第一精品在线| 国产伦精品一区二区三区免费| 欧美a级理论片| 国产精品自拍网站| 亚洲免费在线视频| 久久久久久久久久久久久女国产乱 | 国产一区二区日韩精品欧美精品| 亚洲裸体俱乐部裸体舞表演av| 日韩视频在线免费观看| 欧美成人亚洲成人| 国产一区av在线| 男女视频一区二区| 亚洲最新视频在线播放| 亚洲伦理一区| 亚洲三级色网| 一本色道久久综合精品竹菊| 久久精品成人一区二区三区| 国产有码在线一区二区视频| 久久最新视频| 麻豆九一精品爱看视频在线观看免费| 牛牛影视久久网| 国产精品高清网站| 久久天堂国产精品| 久久影视精品| 99国产精品自拍| 亚洲高清在线播放| 狠狠色狠狠色综合系列| 久久久久久综合| 国产婷婷色一区二区三区| 亚洲性感美女99在线| 久久久五月婷婷| 亚洲视频在线观看视频| 韩国一区电影| 欧美日韩一区在线播放| 久久亚洲国产成人| 亚洲欧美精品伊人久久| 亚洲九九九在线观看| 免费在线观看日韩欧美| 新67194成人永久网站| 99国产麻豆精品| 亚洲国产精品女人久久久| 国产精品国产一区二区| 欧美激情区在线播放| 久久乐国产精品| 午夜精品剧场| 亚洲资源在线观看| 99riav久久精品riav| 国产精品一区二区久久精品 | 国产欧美日韩视频一区二区| 欧美日韩影院| 国产精品久久久久久久久借妻| 欧美好骚综合网| 国产精品高潮在线| 狠狠色狠狠色综合人人| 亚洲国产网站| 亚洲婷婷国产精品电影人久久 | 欧美日韩mp4| 欧美岛国在线观看| 国产精品久久久久一区| 狠狠色丁香久久婷婷综合_中| 在线观看日韩av先锋影音电影院| 亚洲国产精品一区制服丝袜| 亚洲美女毛片| 久久精品二区三区| 亚洲日本成人| 欧美在线播放| 国产精品乱码一区二三区小蝌蚪| 国内精品美女av在线播放| 日韩视频免费观看| 看片网站欧美日韩| 亚洲伊人观看| 国产精品久久久久久久7电影| 亚洲高清视频中文字幕| 久久成人在线| 亚洲视频在线一区| 欧美日韩在线不卡一区| 亚洲激情av在线| 免费成人黄色片| 久久精品国产99| 国产精品一卡二卡| 亚洲一区免费视频| 在线一区二区三区四区| 欧美在线看片a免费观看| 一区久久精品| 欧美一区二区三区视频免费| 久久www成人_看片免费不卡| 亚洲精品欧美专区| 久久国产手机看片| 欧美精品九九| 噜噜爱69成人精品| 国产综合精品一区| 日韩视频在线观看免费| ●精品国产综合乱码久久久久| 一本色道**综合亚洲精品蜜桃冫| 一区二区三区在线观看国产| 亚洲影音先锋| 欧美综合国产精品久久丁香| 国产精品免费观看在线| 夜夜嗨一区二区| 99精品99| 欧美日精品一区视频| 日韩视频免费观看| 在线一区欧美| 国产日产精品一区二区三区四区的观看方式| 91久久中文字幕| 亚洲人成网站影音先锋播放| 欧美日韩综合在线免费观看| 欧美wwwwww| 日韩一级大片| 国产精品亚洲一区| 久久成人在线| 亚洲国产视频一区| 一本色道久久综合亚洲精品高清| 欧美激情中文不卡| 亚洲视频一二| 久久香蕉精品| 一区二区三区色| 国产欧美日韩亚洲一区二区三区| 在线一区二区三区四区五区| 久久国产日韩| 亚洲精品欧美一区二区三区| 欧美精品免费观看二区| 一区二区欧美在线观看| 久久久久欧美| 亚洲人精品午夜在线观看|