免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

Redis主從復(fù)制全解析:全量同步、增量同步與PSYNC協(xié)議實(shí)踐

Redis主從復(fù)制全解析:全量同步、增量同步與PSYNC協(xié)議實(shí)踐 1. 先想明白主從模式到底是在解決什么問題有一回我和同事排查一個(gè)線上告警從節(jié)點(diǎn)斷了幾十秒重連之后主節(jié)點(diǎn)的 CPU 和帶寬突然一起飆升日志里反復(fù)出現(xiàn)全量數(shù)據(jù)同步的記錄。當(dāng)時(shí)第一反應(yīng)是網(wǎng)絡(luò)出了問題但查來查去根子其實(shí)出在復(fù)制積壓緩沖區(qū)太小斷線期間的增量數(shù)據(jù)已經(jīng)保不住了所以被迫退化成一次完整的全量數(shù)據(jù)同步。那次之后我越來越覺得Redis 主從模式不難搭但要把全量數(shù)據(jù)同步和增量數(shù)據(jù)同步這兩套機(jī)制吃透才談得上在故障面前不手忙腳亂。主從模式是 Redis 高可用的地基。你可以先把它理解成一個(gè)“一個(gè)老師帶多個(gè)學(xué)生”的結(jié)構(gòu)主節(jié)點(diǎn)負(fù)責(zé)接收寫請(qǐng)求從節(jié)點(diǎn)實(shí)時(shí)跟著主節(jié)點(diǎn)的數(shù)據(jù)走平時(shí)主要承擔(dān)讀請(qǐng)求。這樣做最直接的好處有三個(gè)讀寫分離把讀流量分散到多個(gè)從節(jié)點(diǎn)上主節(jié)點(diǎn)壓力變小。數(shù)據(jù)冗余主節(jié)點(diǎn)掛了從節(jié)點(diǎn)手里還有一份完整數(shù)據(jù)能頂上。高可用基礎(chǔ)哨兵模式、集群模式底層都依賴主從復(fù)制這套數(shù)據(jù)同步機(jī)制。搭建主從的方式也很簡(jiǎn)單無非兩種。一種是配置文件中寫好replicaof指令另一種是在命令行動(dòng)態(tài)執(zhí)行# 在從節(jié)點(diǎn)上執(zhí)行把當(dāng)前實(shí)例變成 master 的從節(jié)點(diǎn) REPLICAOF 10.0.0.11 6379注意命令是REPLICAOF不是老寫法SLAVEOF。新版本里雖然SLAVEOF還能用但官方已經(jīng)不推薦了主從這兩個(gè)詞在 Redis 的運(yùn)維語義里正逐步被替換掉。很多初學(xué)者會(huì)有個(gè)疑問主從復(fù)制到底是推數(shù)據(jù)還是拉數(shù)據(jù)答案是“拉”。從節(jié)點(diǎn)主動(dòng)找主節(jié)點(diǎn)要數(shù)據(jù)主節(jié)點(diǎn)被動(dòng)響應(yīng)。這個(gè)設(shè)計(jì)很關(guān)鍵因?yàn)槿绻侵鞴?jié)點(diǎn)主動(dòng)推送主節(jié)點(diǎn)還得維護(hù)一張從節(jié)點(diǎn)清單誰掉線了、誰新加入管理起來非常麻煩。改成從節(jié)點(diǎn)主動(dòng)拉取之后主節(jié)點(diǎn)只需要在收到請(qǐng)求時(shí)干活整個(gè)鏈路的控制權(quán)就交給了從節(jié)點(diǎn)。另一個(gè)容易誤解的點(diǎn)是主從模式并不保證強(qiáng)一致性。Redis 的復(fù)制默認(rèn)是異步的主節(jié)點(diǎn)執(zhí)行完寫命令后就返回客戶端了不會(huì)等著所有從節(jié)點(diǎn)都確認(rèn)寫完。所以從節(jié)點(diǎn)上的數(shù)據(jù)一定比主節(jié)點(diǎn)“慢一點(diǎn)點(diǎn)”這個(gè)滯后是常態(tài)。理解了這一點(diǎn)你再去看全量同步和增量同步的設(shè)計(jì)就會(huì)有更清晰的主線一切努力都是為了縮小這個(gè)滯后窗口同時(shí)讓斷線重連后的追平成本盡可能低。2. 全量同步第一次握手是怎么把整份數(shù)據(jù)搬過去的2.1 初次建立復(fù)制的入口PSYNC ? -1不管是從零搭建一主一從還是從節(jié)點(diǎn)數(shù)據(jù)已經(jīng)被污染需要重建第一次建立復(fù)制時(shí)從節(jié)點(diǎn)對(duì)主節(jié)點(diǎn)說的一句話永遠(yuǎn)是PSYNC ? -1翻譯成人話就是“我對(duì)自己要復(fù)制的這段數(shù)據(jù)歷史一無所知從哪個(gè)偏移量開始追我也不知道干脆把我需要的所有數(shù)據(jù)都發(fā)給我吧。”主節(jié)點(diǎn)收到這個(gè)請(qǐng)求之后如果同意全量同步會(huì)回復(fù)FULLRESYNC replid offsetreplid是主節(jié)點(diǎn)當(dāng)前復(fù)制流的身份標(biāo)識(shí)你可以把它理解成這部“數(shù)據(jù)連續(xù)劇”的劇目編號(hào)offset是主節(jié)點(diǎn)當(dāng)前已經(jīng)寫到的字節(jié)位置相當(dāng)于播放進(jìn)度。拿到這兩個(gè)信息之后從節(jié)點(diǎn)才正式開始全量同步。這里有個(gè)值得拆解的細(xì)節(jié)為什么第一次同步必須用全量而不是把主節(jié)點(diǎn)上的每條寫命令都重新發(fā)給從節(jié)點(diǎn)執(zhí)行一遍原因很樸素——主節(jié)點(diǎn)可能已經(jīng)跑了幾個(gè)月寫操作記錄太多了如果從頭開始逐條“補(bǔ)作業(yè)”網(wǎng)絡(luò)開銷和耗時(shí)都不可控。而 RDB 快照把當(dāng)前所有數(shù)據(jù)壓縮成一個(gè)文件一次性發(fā)過去雖然過程重但終點(diǎn)明確。2.2 全量同步的完整時(shí)序BGSAVE、積壓緩沖區(qū)、清空裝載全量同步不是主節(jié)點(diǎn)一個(gè)BGSAVE然后把文件丟給從節(jié)點(diǎn)就完事兒的中間藏著好幾個(gè)容易忽略的環(huán)節(jié)。我把完整流程拆開來看從節(jié)點(diǎn)發(fā)送PSYNC ? -1主節(jié)點(diǎn)決定走全量同步返回FULLRESYNC。主節(jié)點(diǎn)執(zhí)行BGSAVE生成 RDB 快照文件。在BGSAVE執(zhí)行期間主節(jié)點(diǎn)依然對(duì)外服務(wù)所有新的寫命令會(huì)被同時(shí)記錄到復(fù)制積壓緩沖區(qū)replication backlog里。RDB 文件生成完畢主節(jié)點(diǎn)把文件發(fā)給從節(jié)點(diǎn)。從節(jié)點(diǎn)收到 RDB 之前會(huì)先把自己的舊數(shù)據(jù)清空然后加載 RDB 文件。RDB 發(fā)送結(jié)束后主節(jié)點(diǎn)再把積壓緩沖區(qū)里這段時(shí)間積攢的寫命令補(bǔ)發(fā)給從節(jié)點(diǎn)。從節(jié)點(diǎn)執(zhí)行完這些補(bǔ)發(fā)的命令主從數(shù)據(jù)追平進(jìn)入后續(xù)的增量同步階段。注意第 5 步“清空舊數(shù)據(jù)”不是在拿到 RDB 之前就做的。從節(jié)點(diǎn)會(huì)先把舊數(shù)據(jù)留著等 RDB 文件完整接收且校驗(yàn)通過后再清空再加載這樣即使 RDB 傳壞了至少從節(jié)點(diǎn)還能保留原來的數(shù)據(jù)不至于兩邊都變成空殼。這里就是全量同步最容易出性能問題的環(huán)節(jié)了。主節(jié)點(diǎn)執(zhí)行BGSAVE需要 fork 出一個(gè)子進(jìn)程來生成快照。fork 本身很快但如果實(shí)例里堆積了大量大 key子進(jìn)程在生成 RDB 時(shí)會(huì)觸發(fā)內(nèi)存頁的復(fù)制Copy-On-Write內(nèi)存和 CPU 都會(huì)有一波明顯消耗。我在生產(chǎn)環(huán)境里見過上百 GB 的實(shí)例做全量同步主節(jié)點(diǎn)的瞬時(shí) CPU 直接飆到多核打滿耗時(shí)是以分鐘計(jì)的。所以 Redis 提供了一些調(diào)節(jié)閥比如# 開啟無盤復(fù)制主節(jié)點(diǎn)不生成 RDB 文件落盤通過 socket 直接發(fā)給從節(jié)點(diǎn) config set repl-diskless-sync yes # 等待多個(gè)從節(jié)點(diǎn)一起請(qǐng)求延遲幾秒后只生成一次 RDB服務(wù)所有從節(jié)點(diǎn) config set repl-diskless-sync-delay 5無盤復(fù)制適合主節(jié)點(diǎn)磁盤 IO 比較吃緊、但網(wǎng)卡帶寬還寬裕的場(chǎng)景。如果從節(jié)點(diǎn)很多我會(huì)建議開啟repl-diskless-sync-delay讓多個(gè)從節(jié)點(diǎn)集合到一起共享一次 RDB 生成結(jié)果避免每個(gè)從節(jié)點(diǎn)各 fork 一次。2.3 從節(jié)點(diǎn)裝載 RDB 時(shí)是阻塞的別忽視從節(jié)點(diǎn)加載 RDB 文件的過程是阻塞的。也就是說加載期間從節(jié)點(diǎn)沒法對(duì)外提供讀服務(wù)INFO replication里會(huì)看到master_link_status:down同時(shí)在日志里出現(xiàn)SYNC with master in progress。這個(gè)狀態(tài)持續(xù)多久取決于 RDB 文件的大小和機(jī)器的磁盤速度。如果你的業(yè)務(wù)對(duì)從節(jié)點(diǎn)的讀可用性要求比較高可以關(guān)注一下 Redis 7 引入的repl-diskless-load配置# 可選on-empty-db / swapdb降低裝載 RDB 期間的阻塞影響 config set repl-diskless-load on-empty-db這個(gè)配置的大體思路是從節(jié)點(diǎn)先把新 RDB 數(shù)據(jù)加載到臨時(shí)內(nèi)存再切換視圖讓舊數(shù)據(jù)盡可能多服務(wù)一會(huì)兒。不過它也有自己的副作用比如臨時(shí)內(nèi)存消耗會(huì)翻倍。所以要不要開還得看你的內(nèi)存余量不能照單全收。再補(bǔ)一個(gè)容易踩的坑如果從節(jié)點(diǎn)配置了 AOF 持久化那么從節(jié)點(diǎn)在完成 RDB 裝載之后還會(huì)基于新數(shù)據(jù)集做一次 AOF 重寫。換句話說磁盤上會(huì)先出現(xiàn)短暫的“舊 AOF 和文件新內(nèi)容并存”的狀態(tài)如果你監(jiān)控的是磁盤空間這段時(shí)間要做好心理準(zhǔn)備別把磁盤告警閾值卡得太死。3. 增量同步復(fù)制偏移量、積壓緩沖區(qū)與命令傳播3.1 復(fù)制的“里程表”offset 是怎么記錄進(jìn)度的全量同步結(jié)束之后主從之間就進(jìn)入增量數(shù)據(jù)同步階段也叫命令傳播階段。這時(shí)候機(jī)制變得輕量很多主節(jié)點(diǎn)每執(zhí)行一條寫命令除了寫自己的內(nèi)存數(shù)據(jù)還會(huì)把這條命令追加到復(fù)制積壓緩沖區(qū)同時(shí)把自身的master_repl_offset往后推進(jìn)。從節(jié)點(diǎn)每收到一條命令并執(zhí)行完也會(huì)把自己這邊的slave_repl_offset往前推進(jìn)。也就是說主節(jié)點(diǎn)和從節(jié)點(diǎn)各自維護(hù)著一個(gè)“進(jìn)度條”。雖然它們都是朝著同一個(gè)方向前進(jìn)但異步復(fù)制決定了這兩個(gè)進(jìn)度條不可能完全同步一定存在一個(gè)差值這個(gè)差值就是我前面提到的數(shù)據(jù)滯后量。你可以把復(fù)制流想象成一條兩端不斷增長(zhǎng)的長(zhǎng)河offset就是河上的里程標(biāo)。主節(jié)點(diǎn)在上游從節(jié)點(diǎn)在下游河水每流一米兩邊的里程標(biāo)都會(huì)更新。這里的“河水”就是命令字節(jié)流每個(gè)字節(jié)都有自己唯一的偏移量。命令傳播階段其實(shí)就兩件事主節(jié)點(diǎn)往“河”里注入新的命令流并記錄master_repl_offset。從節(jié)點(diǎn)從“河”里消費(fèi)命令流執(zhí)行后上報(bào)自己的slave_repl_offset。從節(jié)點(diǎn)會(huì)每秒上報(bào)一次自己的offset通過REPLCONF ACK offset命令告訴主節(jié)點(diǎn)“我追到哪兒了”。主節(jié)點(diǎn)收到之后不但能算出滯后量還能判斷這個(gè)從節(jié)點(diǎn)是否還活著——如果超過timeout時(shí)間沒收到 ACK主節(jié)點(diǎn)就會(huì)認(rèn)為這個(gè)從節(jié)點(diǎn)已經(jīng)斷開了。3.2 斷線重連后主節(jié)點(diǎn)怎么決定從哪接著傳從節(jié)點(diǎn)斷線之后重連時(shí)發(fā)送的就不再是PSYNC ? -1了而是PSYNC replid offset意思變成“我?guī)е洗蔚纳矸莺瓦M(jìn)度來了你看看能不能從斷點(diǎn)接著給我傳。”主節(jié)點(diǎn)收到這個(gè)請(qǐng)求后會(huì)做兩個(gè)判斷第一這個(gè)replid是不是我當(dāng)前的身份第二這個(gè)offset是否還落在我的復(fù)制積壓緩沖區(qū)里。如果兩個(gè)條件都滿足主節(jié)點(diǎn)返回CONTINUE然后從offset對(duì)應(yīng)的位置開始把后面的命令流繼續(xù)發(fā)給從節(jié)點(diǎn)。這個(gè)過程就是增量數(shù)據(jù)同步也就是官方文檔里說的“部分重同步”partial resynchronization。代價(jià)非常小網(wǎng)絡(luò)開銷只等于斷線期間積攢的那部分命令。如果條件不滿足主節(jié)點(diǎn)返回FULLRESYNC整個(gè)流程退回全量同步。具體來說以下兩種情況最常見從節(jié)點(diǎn)發(fā)送的replid和主節(jié)點(diǎn)當(dāng)前replid對(duì)不上。從節(jié)點(diǎn)發(fā)送的offset太舊了已經(jīng)不在積壓緩沖區(qū)里主節(jié)點(diǎn)找不到那個(gè)位置的數(shù)據(jù)了。3.3 backlog 大小是增量同步的命門對(duì)象積壓緩沖區(qū)的官方配置名是repl-backlog-size默認(rèn)只有 1MB。1MB 聽著不小但放在寫流量大的主節(jié)點(diǎn)上可能不到一分鐘就被環(huán)形緩沖區(qū)覆蓋掉了。為什么說是環(huán)形緩沖區(qū)因?yàn)樗拇鎯?chǔ)區(qū)域是固定大小循環(huán)使用的。新命令不斷寫入最老的命令就被頂?shù)?。主?jié)點(diǎn)只會(huì)保留最近 N 字節(jié)的命令流。舉個(gè)例子復(fù)制積壓緩沖區(qū)當(dāng)前范圍是 offset 10000 到 11024。從節(jié)點(diǎn)重連后上報(bào) offset 10500落在這個(gè)區(qū)間內(nèi)可以增量同步。如果從節(jié)點(diǎn)上報(bào) offset 9900說明它需要的命令已經(jīng)有一部分被頂?shù)袅酥荒苋客?。這個(gè)例子能直觀看出backlog 越大能容忍的斷線時(shí)間越長(zhǎng)增量同步的成功率越高。生產(chǎn)環(huán)境里怎么定這個(gè)大小我一般會(huì)先做個(gè)粗估算repl-backlog-size 主節(jié)點(diǎn)每秒寫入量(bytes) x 預(yù)期最長(zhǎng)斷線時(shí)間(秒)比如主節(jié)點(diǎn)平均每秒產(chǎn)生 2MB 寫命令我希望從節(jié)點(diǎn)斷線 120 秒后重連還能走增量同步那就得給到 256MB 以上。注意這里算的是寫命令的字節(jié)量不是業(yè)務(wù)寫入的數(shù)據(jù)量。一條更新 100 字節(jié)字段的命令在復(fù)制流里可能也要占幾十到上百字節(jié)所以用粗略值乘個(gè) 1.5 系數(shù)更穩(wěn)妥。設(shè)置方式config set repl-backlog-size 268435456如果實(shí)例已經(jīng)運(yùn)行一段時(shí)間了Redis 會(huì)直接從當(dāng)前offset開始填充新的環(huán)形區(qū)間不需要重啟。生效后可以通過INFO replication里的repl_backlog_active和repl_backlog_histlen確認(rèn)。我踩過的一個(gè)真實(shí)教訓(xùn)是某業(yè)務(wù)從節(jié)點(diǎn)數(shù)量有七八個(gè)平時(shí)增量同步都正常但只要某個(gè)從節(jié)點(diǎn)所在的網(wǎng)絡(luò)偶爾抖動(dòng)超過一兩分鐘重連后就必然是FULLRESYNC。后來把repl-backlog-size從默認(rèn) 1MB 調(diào)到 128MB復(fù)制風(fēng)暴立刻消失。查日志的時(shí)候看到的關(guān)鍵字一般是Trying a partial resynchronization (request ...) Full resync requested前面的說明在嘗試增量后面說明失敗了、退化成全量。如果你在日志里看到這兩種狀態(tài)交替出現(xiàn)第一反應(yīng)就應(yīng)該是去看 backlog 大小而不是去懷疑網(wǎng)絡(luò)。4. PSYNC 協(xié)議演進(jìn)斷點(diǎn)續(xù)傳能力是怎樣一步步變強(qiáng)的4.1 SYNC 時(shí)代的無奈每次重連都是一次全量現(xiàn)在大家接觸 Redis 基本都是 4.0 以上版本PSYNC 已經(jīng)是默認(rèn)行為。但如果你翻過老代碼或者看過更早的運(yùn)維文檔會(huì)發(fā)現(xiàn)最初的復(fù)制協(xié)議只有一個(gè)命令SYNC。SYNC的邏輯非常簡(jiǎn)單粗暴從節(jié)點(diǎn)一發(fā)SYNC主節(jié)點(diǎn)就BGSAVE生成 RDB 發(fā)過去。在這個(gè)協(xié)議下從節(jié)點(diǎn)只要斷開重連不管斷了幾秒、缺了多少數(shù)據(jù)主節(jié)點(diǎn)都得重新生成一份完整快照再全量發(fā)一遍。那個(gè)時(shí)期的 Redis從節(jié)點(diǎn)數(shù)量稍微多一點(diǎn)只要趕上一次網(wǎng)絡(luò)抖動(dòng)就可能產(chǎn)生連鎖反應(yīng)每個(gè)從節(jié)點(diǎn)都觸發(fā)一次全量同步每個(gè)全量同步都會(huì)讓主節(jié)點(diǎn) fork 并發(fā)送 RDB主節(jié)點(diǎn) CPU、內(nèi)存、帶寬同時(shí)被打滿。可以說SYNC協(xié)議是把“簡(jiǎn)單”寫在了臉上代價(jià)全留給了運(yùn)維。4.2 PSYNC 與 replid第一代斷點(diǎn)續(xù)傳是怎么實(shí)現(xiàn)的后來 Redis 引入了PSYNC核心變化就是給復(fù)制流增加了兩個(gè)“坐標(biāo)”replid和offset。從節(jié)點(diǎn)可以在斷線重連時(shí)帶上自己上次記住的坐標(biāo)主節(jié)點(diǎn)只要發(fā)現(xiàn)自己手里還留著這段數(shù)據(jù)就能從斷點(diǎn)繼續(xù)傳不必每次都全量。這背后的實(shí)現(xiàn)就是我前面講的復(fù)制積壓緩沖區(qū)??梢哉fPSYNC協(xié)議的價(jià)值和 backlog 是綁定的沒有 backlog 就沒有斷點(diǎn)續(xù)傳。平時(shí)用INFO replication能看到主節(jié)點(diǎn)上這么一行master_replid:8e0d1f3c...這就是當(dāng)前復(fù)制流的身份 ID。只要主節(jié)點(diǎn)維護(hù)的這個(gè) ID 不變從節(jié)點(diǎn)帶著舊的replid和offset回來就有機(jī)會(huì)繼續(xù)增量同步。4.3 PSYNC2主從切換后不再強(qiáng)制全量但第一代 PSYNC 有一個(gè)明顯的硬傷一旦發(fā)生主從切換原本的從節(jié)點(diǎn)被提升為新主節(jié)點(diǎn)它自己的replid是全新的原來那批從節(jié)點(diǎn)帶著舊主節(jié)點(diǎn)的replid再連過來兩邊身份對(duì)不上統(tǒng)統(tǒng)退化為全量同步。設(shè)想一個(gè)場(chǎng)景A 是主節(jié)點(diǎn)B 和 C 是 A 的從節(jié)點(diǎn)。某天 A 宕機(jī)哨兵把 B 提升為新主節(jié)點(diǎn)。C 節(jié)點(diǎn)還在正常運(yùn)行它手里的數(shù)據(jù)就差 A 掛掉那一刻沒來得及同步的一小段而已。理論上B 和 C 都從 A 復(fù)制了一份幾乎相同的數(shù)據(jù)C 連到 B 時(shí)完全有資格做增量同步。但舊協(xié)議不認(rèn)賬C 會(huì)被迫從頭開始全量拉一次 B 的數(shù)據(jù)浪費(fèi)大量帶寬。第二代 PSYNC常被稱為 PSYNC2解決的就是這個(gè)問題。它引入了一個(gè)replid2的概念當(dāng)一個(gè)從節(jié)點(diǎn)被提升為主節(jié)點(diǎn)時(shí)它會(huì)保留自己作為從節(jié)點(diǎn)時(shí)期的主節(jié)點(diǎn)replid把它存到replid2里。C 節(jié)點(diǎn)再連過來時(shí)B 會(huì)檢查你的replid雖然跟我不一樣但和我保存的replid2匹配而且你的offset還在我的 backlog 范圍內(nèi)那就允許增量同步。這樣一來主從切換后的大部分從節(jié)點(diǎn)都能繼續(xù)走增量數(shù)據(jù)同步只有極少情況下才需要全量。這在大型集群里的收益非常明顯少了全量同步等于少了 N 次 RDB 文件傳輸主節(jié)點(diǎn)的 fork 壓力和網(wǎng)絡(luò)壓力都大大緩解??梢杂靡粡埿”戆讶鷧f(xié)議的區(qū)別說清楚能力SYNCPSYNCPSYNC2初次全量同步支持支持支持?jǐn)嗑€重連續(xù)傳不支持支持支持主從切換后續(xù)傳不支持不支持支持需要 backlog不需要需要需要5. 主從復(fù)制鏈路中的坑與排查經(jīng)驗(yàn)5.1 反反復(fù)復(fù)的全量同步先別怪網(wǎng)絡(luò)如果你的從節(jié)點(diǎn)日志里一直出現(xiàn)“先嘗試部分重同步、緊接著又變成全量同步”的狀態(tài)第一排查項(xiàng)一定是 backlog 容量。環(huán)型緩沖區(qū)的特性決定了它只認(rèn)“最近發(fā)過多少字節(jié)的命令”不認(rèn)“你斷線了多長(zhǎng)時(shí)間”。哪怕只斷了幾秒只要這幾秒內(nèi)主節(jié)點(diǎn)的寫命令字節(jié)量超過了 backlog 的上限重連照樣得全量。排查步驟也不復(fù)雜# 主節(jié)點(diǎn)上查看 backlog 實(shí)際使用情況 redis-cli info replication | grep -E backlog|offset重點(diǎn)看幾個(gè)字段master_repl_offset主節(jié)點(diǎn)當(dāng)前寫入進(jìn)度。slave_repl_offset從節(jié)點(diǎn)當(dāng)前進(jìn)度。repl_backlog_histlenbacklog 里目前保存的有效命令流長(zhǎng)度。如果你的repl_backlog_histlen已經(jīng)等于repl-backlog-size說明環(huán)形緩沖已經(jīng)被寫滿里面的內(nèi)容時(shí)刻在滾動(dòng)淘汰。這種狀態(tài)下斷線重連增量同步的成功率非常低。解決辦法也很直接把 backlog 調(diào)大同時(shí)結(jié)合業(yè)務(wù)寫流量估算出合理值。調(diào)整完不是結(jié)束還應(yīng)該盯兩輪第一輪觀察斷線重連的日志確認(rèn)出現(xiàn)的是CONTINUE而不是FULLRESYNC第二輪觀察主節(jié)點(diǎn) CPU確認(rèn)沒有因?yàn)轭l繁全量同步而持續(xù)走高。5.2 過期 Key 不會(huì)在從節(jié)點(diǎn)上主動(dòng)刪除這是個(gè)非常經(jīng)典的主從一致性細(xì)節(jié)。在主從復(fù)制中從節(jié)點(diǎn)默認(rèn)不會(huì)主動(dòng)刪除過期的 key。聽起來是不是反直覺如果從節(jié)點(diǎn)自己能判斷 key 過期直接刪掉不就行了為什么還要等主節(jié)點(diǎn)通知原因在于兩個(gè)實(shí)例的“時(shí)間感”不完全一致如果在同一秒內(nèi)主節(jié)點(diǎn)認(rèn)為 key 過期、從節(jié)點(diǎn)認(rèn)為還沒過期兩邊刪除時(shí)機(jī)不一致就會(huì)導(dǎo)致數(shù)據(jù)分叉。所以 Redis 的策略是過期刪除的決策權(quán)只在主節(jié)點(diǎn)。主節(jié)點(diǎn)的處理方式有兩類惰性刪除客戶端請(qǐng)求某個(gè) key 時(shí)發(fā)現(xiàn)已經(jīng)過期直接刪除并返回空。定期刪除后臺(tái)周期掃描一批 key刪除其中過期的。不管是哪種方式刪除主節(jié)點(diǎn)都會(huì)把刪除行為轉(zhuǎn)成一條DEL命令通過復(fù)制流轉(zhuǎn)發(fā)給從節(jié)點(diǎn)。從節(jié)點(diǎn)收到這條DEL后才會(huì)真正把本地這個(gè) key 刪掉。這里有個(gè)副作用從節(jié)點(diǎn)在收到主節(jié)點(diǎn)的刪除命令之前如果被讀到了那個(gè)邏輯上已經(jīng)過期的 key會(huì)發(fā)生什么按我的實(shí)測(cè)經(jīng)驗(yàn)Redis 從節(jié)點(diǎn)會(huì)直接把這個(gè) key 當(dāng)不存在處理返回空結(jié)果但底層數(shù)據(jù)仍然占著內(nèi)存。也就是說從節(jié)點(diǎn)會(huì)“看不到”這個(gè) key但內(nèi)存遲遲不釋放。如果你發(fā)現(xiàn)從節(jié)點(diǎn)的內(nèi)存占用長(zhǎng)時(shí)間高于預(yù)期而大 key 掃描也沒掃出什么東西可以懷疑是過期 key 堆積。解決辦法并不復(fù)雜檢查主從復(fù)制是否正常確認(rèn)沒有積壓很久的延遲因?yàn)閺墓?jié)點(diǎn)必須追平主節(jié)點(diǎn)、消化掉積壓的 DEL 命令才會(huì)把這些過期 key 清空。另外要注意從節(jié)點(diǎn)一定要開啟只讀模式config set replica-read-only yes如果有人在從節(jié)點(diǎn)上手動(dòng)寫入或修改數(shù)據(jù)主從數(shù)據(jù)立刻就會(huì)分叉而且很難追回來。這類問題往往比 backlog 問題更隱蔽因?yàn)闃I(yè)務(wù)表現(xiàn)只是一些偶發(fā)的數(shù)據(jù)“對(duì)不上”。5.3 復(fù)制風(fēng)暴與從節(jié)點(diǎn)級(jí)聯(lián)控制所謂復(fù)制風(fēng)暴是指短時(shí)間內(nèi)大量從節(jié)點(diǎn)同時(shí)觸發(fā)全量同步導(dǎo)致主節(jié)點(diǎn)資源被沖垮。典型誘因有兩種一個(gè)是主節(jié)點(diǎn)重啟或切換導(dǎo)致所有從節(jié)點(diǎn)同時(shí)掉線再重連另一個(gè)是從節(jié)點(diǎn)全網(wǎng)段重啟全部在同一時(shí)刻重連主節(jié)點(diǎn)。應(yīng)對(duì)思路有幾個(gè)我按優(yōu)先級(jí)說調(diào)大 backlog讓盡量多的斷線重連走增量同步。這是最便宜、最基礎(chǔ)的措施。錯(cuò)峰重連靠運(yùn)維工具控制從節(jié)點(diǎn)分批重啟不要一把梭。用鏈?zhǔn)綇?fù)制即主-從-從結(jié)構(gòu)。中間的從節(jié)點(diǎn)既當(dāng)從節(jié)點(diǎn)又當(dāng)下一級(jí)的主節(jié)點(diǎn)減輕頂層主節(jié)點(diǎn)的壓力。開啟無盤復(fù)制并設(shè)置 delay多個(gè)從節(jié)點(diǎn)可以共享一次 RDB 生成結(jié)果。我自己的傾向是從節(jié)點(diǎn)數(shù)量超過 5 個(gè)的架構(gòu)鏈?zhǔn)綇?fù)制是值得認(rèn)真考慮的尤其是跨機(jī)房場(chǎng)景??鐧C(jī)房帶寬本來就緊張如果每臺(tái)從節(jié)點(diǎn)都直接從主節(jié)點(diǎn)拉全量 RDB那點(diǎn)帶寬瞬間就會(huì)被吃光。中間建一層“中繼從節(jié)點(diǎn)”讓它在某個(gè)機(jī)房?jī)?nèi)再向下一層復(fù)制能顯著降低跨機(jī)房的復(fù)制流量。需要注意鏈?zhǔn)綇?fù)制會(huì)讓最下端從節(jié)點(diǎn)的數(shù)據(jù)滯后時(shí)間變大因?yàn)槊钜?jīng)過兩次轉(zhuǎn)發(fā)。這屬于典型的時(shí)間換帶寬是不是劃算得結(jié)合業(yè)務(wù)對(duì)讀取延遲的要求來權(quán)衡。5.4 平時(shí)怎么判斷主從狀態(tài)是健康的我養(yǎng)成了一個(gè)習(xí)慣每次接手一套 Redis 環(huán)境第一件事先把INFO replication的輸出完整看一遍。重點(diǎn)關(guān)注這么幾項(xiàng)role是主還是從別搞反了。master_link_status:up復(fù)制鏈路是否正常。狀態(tài)不是 up 就得馬上看日志。master_sync_in_progress:0是否正在全量同步。長(zhǎng)時(shí)間為 1 說明有大 RDB 在傳。slave_repl_offset和主節(jié)點(diǎn)的master_repl_offset兩者差值是不是在合理范圍內(nèi)長(zhǎng)期偏大就說明從節(jié)點(diǎn)追不上。master_last_io_seconds_ago最后一次和主節(jié)點(diǎn)通信是在多久之前超過timeout值就要警惕掉線。這里還有一個(gè)經(jīng)驗(yàn)之談從節(jié)點(diǎn)追不上主節(jié)點(diǎn)不一定是網(wǎng)絡(luò)慢也可能是主節(jié)點(diǎn)發(fā)給它的命令本身就重。比如一條命令操作大集合的幾百個(gè)元素復(fù)制流里這條命令的體積很大從節(jié)點(diǎn)執(zhí)行時(shí)又會(huì)觸發(fā)內(nèi)存分配和哈希表擴(kuò)容耗時(shí)遠(yuǎn)超主節(jié)點(diǎn)。這種情況下光是調(diào)大 backlog 沒用還得優(yōu)化業(yè)務(wù)側(cè)的寫命令模式比如把大集合的批量寫拆開。最后分享一條我個(gè)人反復(fù)驗(yàn)證過的經(jīng)驗(yàn)當(dāng)復(fù)制鏈路出現(xiàn)詭異問題時(shí)不要急著改配置。先把redis-cli info replication的快照保存一份再把主從兩端的日志級(jí)別臨時(shí)調(diào)到 debug復(fù)現(xiàn)一次問題把MASTER - REPLICA sync相關(guān)日志完整收集起來。八成以上的復(fù)制問題從這幾行日志里就能看出真正的走向剩下的兩成才輪到網(wǎng)絡(luò)抓包和內(nèi)核參數(shù)排查。這套笨辦法幫我在好幾次故障里省下了大量半夜時(shí)間也建議你下次遇到類似問題時(shí)先試試。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
综合色播| 欧美狠狠草| 这里只有精品1| 丁香五月天堂网AV| 噼里啪啦在线观看免费完整版视频| wWwCom夜操wwW| 婷婷激情综合网| 日韩欧美四五区| 日本9区视频| 九九自拍网| 人人色性网| 亚洲正能量欧美| 亚欧州精品视频| 久久久久综合激动五月天| 久久久久久9热不雅视频| 久久五月丁香| 看国产探花操逼三级片| 小视频aaa久久久| 十二区无码| 97人人干人人操| 这里只有精品,日韩视频| 先锋影音av色五月天资源站| 综合久久99| www.久久av.com| 99热最新网址| 五月天丁香综合在线| 丁香六月婷婷综合激情欧美| 天天色域综合网| 97色干| 99久久精品免费精品国产_国产精品久久久久久_国产在线|日韩_久久国产精品电影 | 任我干视频在线观看| 99久超碰| 婷婷综合五月天| 2023天天日夜夜爽| 思思视频精品| 色99视| 亚洲综合视频网| 欧美性色A片免费免费观看的| 五月婷婷AV| 东北婷婷五月天| 丁香五月天堂| 色婷婷AAA| 色爱综合五月| 2013AV天堂| 五月激情天| 日韩性视频| 亚洲色 视频| av 一区三区四区| 欧美啪啪9| 999热这里只有美国精品| 激情网五月| 激情超碰网| 丁香五月综合| 超碰成人黄色网| 色婷婷色99国产综合精品| 五月色婷婷影院| 丁香五月婷婷俺也要去| 99er精品视频| 婷婷综合成人| 丁香五月另类色婷婷麻豆| 夜夜夜夜夜骑撸| 久久久九九九 99| 人人草人人舔| 99久久精品免费精品国产_国产精品久久久久久_国产在线|日韩_久久国产精品电影 | 亚洲中文字幕av| 天天插天天爱| 91视频一起草| 婷婷五月天成人| 99激情在线| 久久永久视频| 精品人妻伦一二三区久久| 中文字幕成人| 久久婷婷影院| 丁香五月激情五月| 国产人妻人伦精品一区二区| 亚洲欧洲中文日韩久久AV乱码| 天天干天天干天天干天天干天| 亚洲成人一区| XX色综合| 色色五月婷婷久久| 人人色性网| 丁香五月天婷婷久久| 一个色的综合| 五月激情影院| 婷婷久久久| 996er热| 色婷婷五月天在线观看| 香蕉视频性爱BB做爱| 在线中文字幕免费视频| 97视频91| 久久99这里只有精品视频| 成人性爱精品视频| 伊人婷婷综合| www.丁香黄色五月天人与| 婷婷丁香五月天色色| 骚五月婷婷| 性色欲情 网站| 色波激情五月天| 玖玖九九99| 婷婷五月天综合小说网| 另类激情中文| 日本A片一区| 成人在线日韩欧美| 丁香六月成人网| 这里只有精品网| 手机旧版看人妻1025| 另类激情综合| 五月婷丁香久久综合| 色五月,婷婷大香蕉| 婷婷操超碰| 欧美va精品va老师va| 丁香激情六月天婷婷| 五月天婷婷丁香六月| 噜噜色五月| 亚洲色五月| Av在线不卡一区| 91精品久久久久久77777| 五月天婷基地| 欧美色色色色色色| 日本44久久在线| 任你草| 99爱精品| 五月伊人网| 日日噜噜久久婷婷五月天 | 99热官网| 久久久色情| 欧美色色色色色色| 丁香成人综合| 丁香五月综合婷婷| 丁香五月伊人| 亚洲色域网| 色J香五月天| 九月婷婷色色| 办公室少妇激情呻吟A片在线观看| 香蕉影院色| 久超超碰| 五月色丁香| 婷婷在线精品| 婷婷六月色开| 99色色| 1024人妻无码中文字幕| 日本三级日本三级三级人妇四虎| 午夜丁香五月天综合| 欧美狠狠草| 成人 视频免费观看网站| 婷婷久久综合| 国产精品久久久99视频| 婷婷五月电影院| 久久天堂女人| av狠狠操| 婷婷欧美激情综合| 亚洲激情另类| 色噜噜狠狠色综合AV兰草影视| 丁香六月AV| 另类五月激情| 超碰69天堂| 欧美色色色色色色色色色色影视| 婷婷六月天| 久久久久久五月天| 婷婷色色综合激情| 亚洲热综合| 九九综合网色全集| 丁香五月欧美| 99热精品超碰| 色婷婷五月天视频在线| www.超碰97| 99热r| 五月丁香婷草| 成人.在线日韩| 婷婷五月天免费小说| 色综合色五月| 婷婷五月婷婷五月天| 欧美性爱五月天| 秋霞电影理论| 天天射美女| 亚洲六月婷婷| 久久99美女精彩视频| 免费视频WWW在线观看网站| 婷婷五月天六月综合| 操逼亚洲天堂| 婷婷五月丁香手机在线视频| 天天草人人摸| 色五月天丁香婷婷色| www.久久爱| www,五月天激情| 一区二区乱视频码| 91精品久久久久久久| 无码色色色色色| 国产伦亲子伦亲子视频观看| 亚洲操B| 久久98热re| 国产夫妻操逼内射视频| 久热精品在看| 99热午夜精品| 狠狠干综合| 九月av| 婷婷五月天色综合翘| 五月丁香激情综合网| 五月婷婷激情综合拍| 国产亚洲99久久精品| 欧在线一区| 国产69久久久欧美黑人A片| 免费观看欧美成人AA片爱我多深| 五月天自拍网| 丁香五月日啪| 2025最新亚洲激情在线| hd五月婷婷在线| 4438激情网| 婷婷激情综合色五月久久图片| 亚洲精品无人区| 玖玖爱综合网| 日本三级中国三级99| 婷婷综合色五月天| 91九色欧美| 色婷婷六月天在线| 丁香久久综合| 99自拍视频在线| 深爱五月激情| 97操碰人免费| 综合色色五月| 九九色综合| 99热成人在线观看| 五月婷婷啪啪啪啪| 色婷婷婷婷| 插插五月天| 99热这里只有精品18| 婷婷久久五月天亚洲欧美国产日韩在线观看 | 99精品在线观看| 丁香五月天AV在线| 噜噜色五月| 久久er免费视频| 狠狠色狠狠干| 丁香婷婷综合激情五月色| 丁香色六月婷婷| 狠狠色丁婷婷日日,伊人激情综合网| 五月丁香婷婷在线综合蜜桃| www,26uuu,c0m,色情| 综合激情网激情五月。| 久久最新色| 人人爱国产| 99久久国产宗和精品1上映| 疯狂做受XXXX高潮A片| 五月天另类小说久久小说网| 91久久精品无码一区二区三区| 色情五月婷| 在线,国产,色,热视频| 丁香香五月激情免费视频| 国产乱妇乱子伦| 综合激情五月丁香| 在线观看欧美| 这里有精品| 日韩艹比| 性小说五月天| 婷婷五月天在线观看| ady狠狠入| 九九热视频免费观看| 99久久玖玖| 深夜婷婷 丁香| 日日日,com| 五月天婷婷基地| 久热9热| 国产日批视频| 日日夜夜干| 少妇性按摩无码中文A片| 国产亚洲在线| 变态另类9| 人人干人人操人人摸| 国精产品一区一区三区免费视频| 超碰爱爱爱| 777色色色| 国产精品久久久爽爽爽麻豆色哟哟 | 91成人视频| 久九色| 影音先锋激情网| 人人操人人干AV| 日本在线99| 丁香婷婷五月天色播| 日韩AV大全| 久久成人精品视频| 成人网在线视频| www.婷婷五月| 久久99久久99精品免观看粉| 岛国av网| 91爱啪啪| 碰碰碰97免费精彩视频| 久鲁鲁色网| 色亭亭五月天丁香综合AV - 百度 - 百度 | 色色色五月婷| 五月天国产成人| 久久98| 日韩高清成人| 五月婷婷五月丁香| 狼人伊人天堂| 丁婷婷五月天在线播放| 激情四射网| 97婷婷丁香| 好色婷婷| 99精色| 激情五月婷婷丁香六月| 99热99在线| 日日天天天| 亚洲a色| 九九99精品| 激情五月色婷婷| 疯狂做受XXXX高潮A片| 天天看A片| 九九色综合网| 九九热在线99| 99热大全在线观看| 九九久久网| 久久综合香蕉国产国产蜜臀AV| 67194国产| 亚洲色五月婷婷| 九九99免费理论| 五月激情四射网站| 可以免费观看的AV| 久热视频这里只有精品| 五月天狠狠网站| av亚洲国产小电影| 色色热| 六月婷伊人| 97碰超级人人看| 九色综合网| 婷婷五月婷婷| 狠狠狠狠狠狠狠狠| 亚洲色五月| 五月天婷婷久久| 久久九九99亚洲国产久精综合| 91热视频色网站| 久久婷婷五月综合色和| 丁香五月综合在线播放| 九九综合视频在线观看| 亚洲成人AV在线观看| 黑人熟妇一区二区三区| 色欲久久综合| 国产亚洲色婷婷久久99精品91| 夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂亚洲亚洲亚洲亚洲亚洲亚洲亚洲亚洲色 | 久久久人妻| 激情综合激情综合| 激情涩播| 精品夜夜澡人妻无码AV| 五月婷婷啪啪啪| 这里只有精品1| 丁香婷婷久久老熟女综合网| 色亚洲无码| 亚洲视频码| 亚洲亚洲人成综合网络| 婷婷综合五月天| 久久九九综合| 天天干天天爽| 亚洲国产成人在线| 久久9视频欧美| 五月婷婷丁香91| 婷婷色六月| 九九婷婷综合| 婷婷久久丁香| 超碰大香蕉网| 婷婷伊人久久| 丁香六月五月天| 色在线视频网2025| 五月丁香直播| 99在线精品免费视频| 五月丁香拍拍激情综合| 婷婷五月丁香五月| 人人摸人人操人人爱| 久久五月婷天天干| 久久久久9999| 婷婷色五月婷| 婷婷成人五月天| 久久全意婷婷| 五月综合久久| 国产玖玖资源| 五月天婷婷色| 超色欲天天| 好好干Av| 人人妻人人澡| 1024在线视频| 婷婷六月丁香激情综合| 日本 @ va 免费| 丁香5月婷婷| 99a级片| 香蕉婷婷五月| 99视频综合网| 久久之人妻| 婷婷五月激情片| 武则天精品久久| 91jiuseshunv| 日韩啊啊啊| 玖玖爱导航| 这里只有精品在线免费视频| 五月天天天综合| 亚洲中文字幕AV| 综合超碰熟| 婷婷五月天在线观看免费| 激情丁香五月婷婷| 婷婷成人AV| 色99欧洲色19| 丁香9月婷婷| 99精色| 九九久久偷拍| 日日色综合| 亚洲无码黄色| 亚洲AV免费在线| 色久影院| 99免费在线视频| 欧美三级欧美一级| 99久久婷婷| 嫩草视频在线观看| 日本一级特黄大片AAAAA级| 91九色视频| 91九色 婷婷| 婷婷五月成人| 五月丁香色五月| 91九色偷拍| 五月叮香啪| 丁香五月天.com| 九九久久99| 66精品成人免费网站在线观看| 五月大香蕉| 人妻乱码久久久| 天天草天天爽| 思思w99| 激情九月婷婷九月| www激情| 欧美婷婷综合网| 综合五月婷婷| 99自拍视频在线| 91在线日| 婷婷五月天日日日干干干| 99精品偷自拍| 丁香五月婷婷姐| 202丰满熟女妇大| 久久久噜噜噜久久人妻| 免费日韩99| 丁香香蕉婷婷| 北条麻妃伊人| 色玖玖| 99超级碰碰| 九九视频精品在线免费| 任你艹| 91人人人人人人人| 婷婷91| 翔田千里 50岁 无码| 色天天综合成人网| 激情五月天啪啪| 妇激情基地| AAA久久久AAA久久久AAA| 丁香网五月天| av高清无码| 欧美三级欧美一级| 天天日综合网射| 熟女激情网| 91打屁股免费看| 狠狠色综合网| 99在线精品免费视频| 五月丁香六月婷| 九九亚洲视频| 终合激情网| 色区域网站视频| 99热精品10| 新久久五月天激情| 天天日夜夜夜操操操操| 丁香大香蕉| 97人人搞| 五月天色色色| 女人天堂AV| 天天日天天摸| 午夜69成人做爰视频| 亚洲九九视频| 五月婷婷久久大片| 色综合久久8| 亚洲视频在线观看| 真实的国产乱XXXX在线91| 亚洲六月综合激情久久下卡| av在线不卡播放| 香蕉97碰碰碰超视精品| 婷婷五月中文字幕| 色九九九综合| 可以看的AV网站| 婷婷五月天亚洲综合网| 激情99| 久久精典| 中文字幕婷婷在线| 久久九九玖玖| 99视频在线播放大全| AV操一操| 激情婷婷五月| 高清无码 一区 二区 三区| 色日本网| 六月综和久久| 狠狠色综合久久| 伊人啪啪网| 丁香婷婷激情四射五月| 色五月涩涩婷婷蜜桃| 色五月在线视频观看| 婷婷情色五月天| 免费一区二区三区| 激情婷婷丁香五月天小说| 思思热再线视频| 天天成人综合视频| www.色婷婷| se色综合网| 日在线V视频在线播放| www.久久99热地址发布| 极品少妇高潮啪啪AV无码| 丁香六月综合| 操逼福利视频| 亚洲综合视频天天精品| 激情六月日韩| 午夜丁香六月婷| 激情5月婷婷狠狠干| 丁香婷婷性爱| 99久久久免费| 99操视频| 五月天啪啪| 99在线观看精品| 性爱七区| 色综合大香蕉| 欧美日韩成人高清在线| www.五月天婷婷| 亞洲自怕| 99色网站| 丁香九月综合激情| 九色自拍| 免费AAAAA网| 色玖玖爱| wwwss在线观看| 亚洲色99| 思思久久99热| 丁香五月天堂网| 亚州第一黄网| 欧美人妻一区二区| 亚洲婷婷综合视频| 亚洲第一第二网站| 美国不卡视频| www.五月天激情| 五月天丁香花婷婷| 日本色色网站| 激情AV| 激情久久五月天| 91日综合欧美| 五月天婷婷成人资源站| 九月av在线| 久热九九| 人人操人人爱丁香五月| 99在线精品视频| 丁香五月亚洲| 影音 五月 婷婷 久久| 久久激情网| 啪啪婷婷五月天激情| 日本超碰在线| 大香av| 人人澡玖玖一| 五月天成人伊人| 五月天婷婷激情小说电影| 国产精产国品一二三在观看| 国产综合婷婷| 四月婷婷五月丁香| 黄网在线免费观看| 99在线69| 日本在线噜噜| 99操99| 久热播这里只有精品| 操久久网| 97久人人| 91人人操人人看| 91人妻九色大屁股| 九九香蕉网| 欧美婷婷综合| 思思热热久久| 夜夜夜天天操| 香蕉狠狠爱视频| 色激情综合狠狠婷婷| 婷婷五月天国产性感美女演员久久久久| 国内外色色色色色成人视频| 五月天色婷好好| 丁香六月亚洲| 亚洲成人电影在线免费观看| 精品激情| 九九热这里只有国产精品| 伊人色综合久久久| 天天日日| 久久伦乱| 69堂午夜视频最新地址| 99高级会所久久| 在线婷婷| 超级碰 久久9| 五月丁香啪啪网| 99精品爱| 丁香六月伊人| 亚洲久久婷婷丁香五月天| 综合久久9| 操97免费超级视频| 婷婷丁香色五月亚洲| 婷婷伊在线| 婷婷五月黄色激情在线| 五月婷婷综合久久| 亚洲综合丁香婷婷六月天| 天天添天天摸天天天天做| 狠狠肏综合网| 亚洲婷婷基地| 久久久天堂国产精品女人| 久九男女天堂| 99免费偷拍视频| 久草 天堂| 开心五月婷婷五月| 久久a热| 色5月婷婷色| 屁股翘好撅高迎合跪趴| 婷婷五月天激情综合| 欧日美女Va| 九九热99精品| 狠狠色成人影片| 亚洲成av人影院| 4399伦理午夜| 丁香八月综合激情| 大香蕉婷婷丁香视频在线| 久久99久久99久久99人受| 五他月天啪啪啪| 五月天丁香六月综合| 九九久久综合网站| 黄网免费看| 俺也去五月婷婷丁| 久久婷婷五月综合伊人| AV国产有码| 久久婷婷五月综合激情国产 | 99精品国产在热久久| 无码碰碰| 久久九九99字幕| 丁香婷婷基地| 天堂网操| 婷婷五月天成人影片| 人人干人人看| 婷婷丁香91| 亚洲另类噜噜| 九九久久污| 六月激情网| 天天久久狠狠色综合| 婷婷性爱五月天| 精品操逼一区二区| 六月色婷婷欧美| 极品人妻VIDEOSSS人妻| 爱爱色五月天| 欧美性生交A片免费看| 五月天婷婷导航| 538在线精品| 丁香丝袜五月| 激情丁香五月AV| 丁香六月狠狠干| 另类色网| 人与禽A片啪啪| 99热这里全是精品| 中文av在线观看| 91干| 婷婷五月丁香色情| 97在线视频观看| 成人综合伍月天| 亚洲天堂制| www.婷婷五月| 色色色色五月| 婷婷色五月激情| 99国产在线精品视频| 丁香五月婷婷色| 伊人玖玖婷婷| 丁香综合| 色九网| 深爱激情网五月天| 天天激情5月天亚洲| 九九热视频在线观看| 五月天天天天天天天天天天天婷婷婷| 91色综合| 五月天婷婷激情网| 日日操夜夜操不卡| 97香蕉碰碰人妻国产欧美| 五月婷在线色视频| 精品久久99| 1024AV视频| 丁香五月花| 久九色| 天天摸天天舔| 色欲日日躁| 欧美色偷偷大香| 香蕉97碰碰碰欧美| 色九网| 开心婷婷中文字幕| 91视屏在线观看com.wwwvv| 丁香六月综合激| 色婷久久| 婷婷综合激情| 丁香五月天中文字幕| 那里有AV网址| 99热综合在线| 碰人人97| 五月婷在线| 婷婷五月天社区| 丁香蜜臀黄色婷婷五月天| 天天插天天插| 98国产精品综合一区二区三区| 五月天婷婷社区| 五月丁香91| 亚洲精品亚洲人成人网| 丁香九月婷婷综合| 色色99| 欧美交换配乱吟粗大25P| 六月婷婷综合| www.lchjjc.com| 伊人超碰在线| 色综合婷婷| 婷婷五月天影院| 另类激情综合| 婷婷五月天亚洲色| 日本激情五月| 99热在线观看免费精品| 久久精品人妻| 成人av免费观看| 五月激情综合网| 久99视频| 色停停影院五月天| 狼友视频在线观看18| 九九综合九九| 久久综合激情婷婷激情| 亚洲色频| 日韩美女羞羞网站在线观看| 国产日批视频免费播放| 性生活久久朋友人妻| 99re这里| 少妇水多A片太爽了| 在线sebiav精品视频| 一本久道综合色婷婷五月| 狠狠狠狠狠狠狠狠草| 99无码黄色视频| 丁香六月婷婷色XXXXX| 久久婷五月天| 99九九99九九九视频精彩| 色婷婷中文字母五月丁香| 激情www| 国产毛片精品一区二区色欲黄A片 国产人妻777人伦精品HD | 色婷婷狠狠色| 狠狠色成人影片| 欧美日韩国产一区二区| 中文不卡一二区| 97人人草| 99热老司机| 国产美女视频久| 99五丁香月| 性99网站| 丁香六月婷婷色XXXX| 99热九九这里只有精品10| 婷婷综合激情| 久久在线92| 五月天啪啪啪| 色哟哟性爱av| 六月 丁香 视频| 夜夜嗨一区二区三区直播内容 | 99精品久久久久久| 亚洲噜色| 操人精品| 丁香五月婷婷AV| 久久婷婷东京热| 99惹精品视频| www.色多多婷| 思思热精品免费视频| 人妻AV在线| AV在线大香蕉| 97人人射| 久久婷婷五月天懂色| 五月婷婷亚洲| 黄网在线免费| 五月婷婷中字在线| www.久久久久| www.夜夜夜| 色色色色热| 五月丁香婷婷激情| 丁香五月www| 午夜五月天| 天天舔天天| 色综合久久综合| 91丨九色丨熟女高潮| 日日肏天天操| 五月天婷婷丁香花| 九九99精品| 5月丁香六月婷婷| 色欲五月婷婷| 色停停香蕉视频| 五月天色婷婷成人| 日韩成人电影在线播放| AA丁香综合激情| 日本操逼九九九九58日本操逼| 亚洲不卡欧洲| 九九在线视频| 久热免费| 97色色色视屏| 九九99偷拍视频| 激情婷婷久久| 99色1| 懂色av粉嫩AV蜜臀AV| 综合色色色色色色| 五月天激情综合10p| 97在线干| 婷婷丁香在线| 丁香五月天激情综合| 五月丁香趴趴| 九九婷婷五月天| 99热成人| 狠狠精品干练久久久无码中文字幕| 婷婷五月天激情小说| 丁香五月天BBw| 六月婷婷狠狠| 六月五月丁香五月欧美| 日韩久热| 99超级碰免费视频| 99久久久久| 久久总和99| 欧美天堂久久| 91综合在线视频| 青青草婷婷久久| 日韩美女在线视频19| 香蕉曰比| 9999热在线| 欧美亚洲色色色色| 9999热精品| 狠狠色丁香婷婷久久综合| 国产免费av网站| 超碰自拍天堂| 亚洲爱婷婷| 大香蕉久久久久久久久| 777影视理论片大全在线观看| 激情综合亚洲| 日本色婷婷| 婷婷丁香五月亚洲| 97超碰在线免费观看| 日本丁香五月| 日韩乱玛久久| 99成人网站| 久久草婷婷丁香网站| site:wpjngj.com| 丁香六月成人网| 丁香六月婷婷激情| 欧美性爱五月天| 97在线精品| 午夜丁香六月婷| 久久婷综合| 色 色 色综合com| 欧美日韩99| 狠狠一日| 天天舔夜夜操www com| 天天日,天天射,天天舔| 婷婷五月天久久久| 亚洲xx在线| 婷婷久久性爱| 天天粽合合合合| 日本五月天一页| 亚洲精品视频在线播放| 五月天丁香啪啪网| 婷婷五月综合在线| 五月婷色激情五月| 99玖玖在线视频| 99热欧美| 久久丁香婷婷色情综合| 久热大香蕉| 欧洲激情五月天| 色偷偷色婷婷| 91干视频| 九9九9无码| 91VIP在线观看| 五月激情基地| 狠狠精品干练久久久无码中文字幕| 成人国产网站| 五月天最新网| 色五月婷婷影视| 草逼大片| 97色综合视频| 色五月视频,小说| 亚洲网站观看视频| 99热这是里只有精品| 日本在线观看91| 99热综合网| 9视频在线成人网站| 9 1超碰九色| 激情久久久久久久久| 9九色首页| 99九九精品视频| 97碰碰在线看视频免费| 综合激情在线观看| 婷婷综合网站| 日韩AC在线免费观看| 亚洲射激情| 亲子乱AV-区二区三区| 五月丁香六月综合基地| 新激情综合| 五月丁香大香蕉| 天天噜天天爱| 大香久久综合网| 婷婷射图| 激情伍月 欧美| 超碰亚洲欧美| 婷婷五月激情五月激情| 久久99jiu9| 五月天综合| 啊V视频在线观看| 国产AV一区二区三区日韩| 。久久久久久久久久久久久久人妻| 中文字幕视频色婷婷| 婷婷综合在线观看视频| 丁香五月天社区婷婷| 色噜噜狠狠色综无码久久合欧美| 久久婷婷人人| 五月婷婷激情综合网| 青青操avbb| 国产成人精品亚洲线观看| 性小说五月天| 五月丁香六月婷婷综合| 99亚洲天堂| 五月天丁香成人| 九色视频这里只有精品| 久久性刺激| 91操碰| 五月婷婷免费看| 天天做天天爱天天摸| 综合精品99| 婷色天堂| 日韩成人综合| 玖玖在线视频| 色色色网站| 91精品91久久久中77777| 激情网 五月天| 亚洲婷婷五月| 国产亚洲99久久精品熟| 91在线观看九区| 刘玥av在线| 欧美日韩欧美| 丁香六月在线| 狠狠色噜噜狠狠| 激情五月丁香亭亭 | 日韩影院三级| 亚洲成人日韩无码精品| 日韩精品999| 五月丁香六月色| 欧美精品999| 亚洲在线综合| 人人摸人人干人人做| 日日操日日射| WWW,婷婷,COM| 在线天堂9| 尔尔AV一区| 可以免费观看的AV| 五月婷婷 欧美| 成人五月天在线视频在线观看 | 午夜九九九九九九九九九九九九九| 丁香激情综合| 无码99| 亚洲va综合va国产va中文| 国产欧美日韩综合精品一区二区| 97影院一级片| 六月丁丁香| 日韩一级一片内射视频4K| 国产免费性爱| 91操女| 婷婷丁香婷婷97| av无码电影| 91九色小视频| 激情五月综合网| 亚洲、欧美、国产另类笫二区| 91|九色|动漫| 九九九九国产| 婷婷丁香五月六月激情| 亭亭玉月丁香| 少妇真实被内射视频三四区| 欧洲色色| 日本天堂免费99| 91啪级电影| 中文字幕人妻在线| 伊人在线视频| 26uuu精品一区二区| 99在线国| 插逼综合网| 狠狠草婷婷| 夜夜爽天天干| 六月天婷婷| 亚洲成人av在线观看 | 26uuu国产精品| 九九99免费视频| 色吊丝99| 五月激情婷婷六月丁香| 婷婷色网站| 青青色com久久| 色亚洲中文| 色综合天天综合成人网| 色天堂操| 操啊操av| wwwss在线观看| 五月丁香六月婷婷啪啪| 久婷婷久草| 丁香五月在线播放| 2017狠狠干| 熟女激情五月天| 五月天丁香婷婷视频网址| 亚洲精品亚洲人成人网| 五月婷婷六月色| 亚洲AV电影美洲AV电影| 五月天 另类图片| 秋霞少妇AV网站| 五月综亚洲| 97碰碰草| 九九视频在线观看| 99热亚州综合| 五月激情六月综合| 欧美三日本三级少妇三99| 熟女激情网| 五月天激情日色在线| 久久久久人妻精选| 99网| 免费试看小视频 99| 影音先锋女人AA鲁色资源 | 丁香六月婷婷久久高清| 99亚洲视频| 91综合在线观看首页| 丁香婷在线| www.婷婷五月| 九九久久精品| 丁香伊人综合| www.综合久久.com| 狠狠干综合| 野战毛片三一3| 大香蕉久| 欧美天堂婷婷日韩| 欧美啪啪9| 色5在线| 国产真人做爰视频免费| 日韩国产AV播放| 在线中文亚洲| 99爱精品视频| Aaa久久| se99在线| 这里只有精品久久| www.9797国产| 精品A√| 任我干视频在线观看| 3pAV| 欧美成人精品A片免费一区99| 大香蕉久久久久| 99干视频| 久操大| 国产操碰| 亚洲色啪| 538在线精品| 国产婷婷五月天| 色色婷婷婷丁香五月天| 婷婷性爱五月天| 欧美久人人| 五月丁香啪啪啪| 婷婷的99视频网站| 欧美内射AA| 色很很96| 另类少妇人与禽zOZZ0性伦| 成人国产欧美大片一区| 狠狠狠婷婷五月综合| 色婷婷成人| 婷婷五月天视| 久久精品无码一区| 九九热免费| 欧美色碰| 伊人干综合| 六月婷婷无码| 久久A极片| 玖玖资源天天无码| 五月丁香久久婷| 色婷婷五月天综合网| 无码人妻少妇色欲AV一区二区 | 久久66精品| 伊人久久丁香五月91| 五月天天爽| 大香蕉婷婷久久| 精品久久99码| 激情五月第四色| 大香蕉久久综合网| 丁香六月天| se99高清无码| 亚洲99精品九九在线| 特级西西4444www无码| 8区视频在线| 中文毛片无遮挡高潮免费| 丁香五月婷婷俺也要去| 婷婷五月色色| 综合99久久| 五月丁香在线国产| 99视频91| 亚洲人人操| 九九久热| 综合亚洲六月婷婷在线| 五月婷婷丁香瑟瑟视频| aa久久| 丁香五月婷婷综合啪啪| 五月丁香婷婷五月| 丁香5月激情网| 欧美97超碰| 9久精品视频| 开心五月深爱五月婷| 99色在线观看视频| 人妻久久久久久| 五月婷婷在线播放| 丁香五月婷婷激情小说| 久久婷婷五月综合色丁香花| 丁香五月婷婷六月婷| 婷婷五月综合免费在线| 色婷婷香蕉| 人妻精品久久久久久| 97色婷婷成人综合在线观看| 曰韩五月丁香色婷婷无码| 少妇性按摩无码中文A片| 五月婷婷 欧美| 丁香婷婷午夜| 亚洲激情久久| 久久婷婷婷| 色五月天视频| 久色网| ZpRSw| 久久五月综合| 九九色热| 金桔一区二区ab地址| 色五月婷婷伊人| 狠狠精品干练久久久无码中文字幕 | 丁香婷婷九月| 色五月激情问网站| 五月Huangsewang| 538在线精品| 色色婷| 丁香六月综合激情| 综合婷婷| 99综合视频一体| 97在线精品| 国产精品18久久久| 嫩BBB槡BBBB搡BBBB| 狠狠干,狠狠操| 亚洲无码色| 国产伦亲子伦亲子视频观看| 免费看欧美成人A片无码| 九九视频在线观看视频6 | 99综合免费视频| 强伦轩人妻一区二区电影| 久久久精品色| 伊人丁香花综合影院| 丁香女人五月天| 午夜福利8055| 99婷婷精品推荐在线视频| AV在线观看网站| 婷婷五月天在线观看| 天天操天天日天天操| 熟女五月天久久综合| 密黄站| 97久久五月丁香婷婷| 9色免费网| 五月丁香狠狠爱婷婷综合| 五月亭亭开心网| 91丨九色丨国产打屁股| www.maotanji.com| 久久与婷婷| 久青操| 色综合久久44| 激情综合国产| 久操综合| 婷婷色丁香五月| 五月天天综合| av在线免费网站| 亚洲久热无码| 色色色国产| 激情伊人五月天| 狠狠狠狠狠狠狠狠| 可以看的AV网站| 成人免费va| 色婷婷成人五月| 丁香婷婷视频在线| 九九色综合九九色| 新伍月婷婷| 亚洲第一第二网站| 激情影院丁香五月| 丁香五月天堂| 国产欧美日韩一区二区三区| 欧美成人无码高清一区二区三区| 六月激情婷婷| 色噜噜狠狠色综合无码久久欧美| 亚洲色精彩| 五月天婷婷爱丁香中文字幕| 玖玖精品资源| 伊人超碰| 日韩在线看AV| 欧美激情性做爰免费视频| 91色呦哟| 婷五月天| 久久婷婷五月天激情四射| 日韩另类| 色六月丁香婷婷狠狠干| 亚洲婷婷乱乱丁香| 99热a片免| 99九九在线观看免费| 久久精品性爱| 99久久精品免费精品国产_国产精品久久久久久_国产在线|日韩_久久国产精品电影 | 婷婷五月色惰| 久99视频| 韩国真做片在线观看| 色婷婷在线电影| 怡红院AV亚洲一区二区三区H | 色婷婷五月影视| 天堂在线观看视频| 婷婷九月亚洲| 99久久综合精品五月天| 久操人妻| 五月黄色婷婷| 久久国产性爱A V| 人人干女人| 婷婷丁香激情五月天色色色| 玖玖综合网| 一起草性爱不卡视频| 2018国产大陆天天弄| 26uuu丁香婷婷五月| 99热只有国产在线精品| 9999久久久久| 国产免费av网站| 五月丁香少妇网| 五月天综合婷婷| 亚洲自拍天堂| 五月丁香六月花| 婷婷五月天av| 综合色99| 久久婷婷五月| 91九色PORNY肉丝在线| 插插插丁香五月婷婷| www.91在线观看| 亚洲久艹| www.开心激情| 欧美情色一区| 九九99视频精品| 婷婷五月色| 色婷婷888| 日本色综合| 婷婷五月色花丁香社区| 人妻肉射免费观看| a网站免费观看| 婷婷六月激情小说网| 97碰免费视频在线| 激情人妻综合| www夜夜操| 日韩婷久| 亚洲欧美999| 啪啪日本欧美| 日日夜夜噜噜爽爽| 97在线观看| 色综合五月婷婷狠狠干| 色色激情五月天| 五月色婷婷在线观看| 婷婷金品综合视频| 超碰99在线观看| 色999;丁香五月| 丁香婷婷性爱| 色五月婷婷中文字幕| 色五月超碰| 婷婷黄色| 全亚洲最大的婷婷五月天网站COM| 亚洲av综合网| 久久99婷婷| 六月综合婷婷开心伊人| 亚洲五月天,激情视频| 这里只有精品免费| 天天舔天天插天天爱| 激情五月五月婷婷| 亚州激情在线视频|