免费国产精品自在自线-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
返回資訊列表
色热久资源| 99热久| 亚洲综合五月天婷婷| 亚洲天堂热| 精品成人久久久久久久_一二三四视| 国产精品人妻欲求不满| 五月丁香婷婷狠狠操| 无码网站视频| 婷婷丁香六月影视| 无码人妻电影| 六月丁香成人| 精品亚洲国产成AV人片传媒| 综合网啪啪| 五月丁香六月激情综合网| 五月婷婷久草| 狠狠干综合| 这里有精品2| 亚洲精品99| 婷婷五月天97干| 综合激情在线| 伊人六月无码视频| 欧美va亚洲va| 色婷婷九月| 欧美一级a| 天天色天天操天天射| 婷婷五月天激情网址| 丁香花五月天婷婷成人社区| 人妻丰满精品一区二区A片| 激情五月天偷拍综合网| 综合激情网激情五月。| 九九热超碰| 丁香婷婷影院| 九九无毛| www99精品日韩| 五月天堂婷婷| 99人妻碰碰碰久久久久禁片| 久久激情天堂| 色婷婷亚洲六月婷婷中文字幕| 人妻射精AV| 久久亚洲天堂| av五月丁香婷婷网| 91高潮喷水久久久久久久久| 日本97人人| 思思热精品在线| 天天射影院| 国产精品蜜臀99| 日本怕怕视频| 台湾综合丁香五月蜜桃| 99热这是里只有精品| 中文久久婷婷| 色色五月婷婷久久| 婷婷伊人综合中文字幕| 婷婷无码视频| 欧美日韩成人在线| 五月久久网| 色亭亭丁香五月天| 黄色99热| 欧美久久网| 五月婷婷激情在线| 超碰在线资源| 99熟女啪啪视频| 久久大香蕉丁香| 99色热| 91色在线/日韩| 婷婷五月丁香六月天亚洲综合| 人妻系列久久久久久久久久久| 色婷网| 中文精品在| 综合色网站| 婷婷九月丁香天堂丁香天堂| 色婷婷色情| 久久精品五月| 五月婷婷色色色| 99乱视频| 色色色色热热| 伊人丁香花综合影院| 五月色丁香成人| 色色综合日韩| 淫荡综合网| 久久这里只有精品视频26| 停停色综合伊人| 人人色性网| 五月天影院婷婷在线观看| 天天插轮理| 五月天激情日色在线| 五月丁香婷婷激情在线| 五月色影院| 婷婷五月天视频亚洲| www.夜夜騎夜夜狠| 亚洲美女网Va| 99精品亚洲| 操一区| 国色天香成人网| 中文字幕成人网站| 五月丁香六月激情| 99热主页日本| 狠狠色综合777| 色青青视频| 久久思思热视频| 六月丁香好婷婷| 亚洲欧美999| 婷婷丁香五月婷婷| 99亚洲视频| 色五月婷婷五月天| 五月丁香综合影院| 激情五月网站| 一起草无码| 久久婷婷91| 激情五月激情综合网| 99热这里有精品| 中文字幕精品无码一区二区| 五月丁香婷婷综合视频| 天天综合色综合| 天天日夜夜草进麻麻的子宫| 99无码| 亚洲国产精品VA在线看黑人| 96色婷婷| 激情婷婷综合| 激情99| 五月色综合| 91seAV| 日本啪啪天堂| 久久机热思思热| www.久久色.com| 99热在线观看| 五月天婷婷色| 九九在线91| 涩五月婷婷| 亚洲精| 婷婷午夜综合| 九 九九九AV| 中文字幕在线免费观看视频| 79精品在线视频| 狠狠干综合网| 丰满人妻妇伦又伦精品国产| 久久丝丝热| 六月丁香五月激情婷婷| 人人爱人人草| 中文精品在| 26uuu91| 综合色色婷婷| 久久久亚洲成人无码A片| 超碰人人操在线| 爱婷婷久久视频| 国产亚洲色婷婷久久99精品91| 人妻丰满精品一区二区A片| 日日操夜夜操无码免费| 欧美久久婷婷| 4399无码视频| 色青青五月| 99色在线视频| 性爱七区| 性爱七区| 四月婷婷丁香| 日本色色色色色色色色一色二色| 综合五月草| 日日撸夜夜操| 亚州第一A片| 丁香五月婷婷色综合基地| 色色五月婷婷久久| 五月婷婷九九久久| 久久人妻乱| 天天干天天干天天干| 好色婷婷| 亚洲欧美婷婷五月色综合| 很很干天天干| 婷婷在线精品| 欧美性爱五月天| 五月天社区婷婷| 综合亚洲六月婷婷在线| 99在线免费视| 五月丁香婷婷综合| 99久久99热| 激情久久久久久| 九九久久高清| 久久婷婷五月综合色奶水99啪| 91制片厂久久久国产电影| 欧美婷婷丁香五月社区| 久机视频这只有精品| 国产老熟妇亲子乱对白| 欧美一级色| www.婷婷亚洲基地| 99色视频| 五月之婷婷| 日韩中文字幕| 国精产品一区二区三区| 在线不卡AC| 五月婷婷五月天天| 六月色丁香婷婷| 激情五月天开心网丁香无码| 久热这里只有精品6| 粉嫩av蜜桃av蜜臀av| 天天人人人人人人人人人人人| 岛国午夜视频| 激情五月婷婷五月| 久热99热| 五月婷婷香| 高清视频一区| 99啪啪网| 26UUU欧美激情一区二区| www.henhenl| www.五月天婷婷| 亚洲日日日| 日本女色人人| 婷婷va| 99色在线免费观看视频| 久热一本| 天天天天天操| 国产乱轮一区二区三区| 五月色网| 很很干五月天| 色欲AVV| 五月天婷婷色播| 婷婷网五月天| 五月丁香色播| www99xxxx五月丁| 夜夜干 夜夜操| 人人综合91网| 婷婷丁香五月激情| 毛片新网地| 97超级碰| 色色婷婷丁香| 五月社区婷婷激情| 久久码久久无清| 丁香久久五月婷综合| 69久久99精品久久久久婷婷| 色综合色| 色色色婷婷| 久久色婷婷| 亚洲精品视频在线播放| 婷婷五月天偷拍| 黄色91在线观看| 看片视频在线免费日产在线看| 婷婷五月激情的图片| 日本色99| 综合网五月天123| 婷婷久久在线| 国产人妻人伦精品一区二区| 婷婷五月在线播放| 精品人妻伦| 五月天婷婷Av| www.超碰在线| 亚洲色激情| 亚洲综合在线播放| 婷婷色五月大香蕉在线| 99日本精品视频热| 天天干天天爽天天操| 99超碰在线免费| 久久激情五月| 97碰久久| 六月丁香VA| 亚洲综合五月天婷婷丁香| 少妇AB又爽又紧无码网站 | 國語久久婷| hd五月婷婷在线| 婷婷色一二三区波多野结衣| 国产小精品| 天天日天天插| 99在线国| 翔田千里无码| 99热只有精品综合| 色五月偷偷| 在线看的免费网站| h在线看免费版在线看| 九九精品视频在线观看| 激情五月天综合图片小说网站| 欧美性久| se色综合网| 久久婷综合| 亚洲无码色色| 99国产性感视频| 99re这里只有精品99| 天天久久婷婷| av在线免费播放观看| 夜夜谢天天干| 久9久9热久热| 九艹在线| 99热在线看片| 人人干人人操人人摸| 插少妇综合网| 亚洲丁香五月天在线视频| 久久丁香五月| 六月婷婷综合激情| 激情综合网色五月| 天天操五月天| 亚洲免费看片| 另类小说五月天| 99熟女视频| 欧洲激情精品婷婷| 天天日天天爽夜夜爽| www天天干| 99 热国产在| AV动漫不卡无码免费| 激情婷婷五月社区| 婷婷五月丁香综合瑟瑟| 99久久喉9| 思思热在线视频精品| 亚洲色婷婷| 伊人久久大香线蕉av最新| 99激情| 色香欲综合| 五月丁香欧美在线| 色色网站在线| 婷婷玖玖五月天| 欧美成人网99网| 丁香五月婷婷色偷偷| 婷婷五月久久| 激情五月天激情综合网| 91婷婷五月天嫩女| 狠狠五月天| 婷婷婷婷婷开心无码播放| 91大屁股| 色婷婷久久综合中文久久一本| 五月停停丁香| 伊人五月天在线| 日韩视频99| 日日爱699| 99国产视频网| 99热6这里只有精品| 99热都是精品| 香蕉久久av一区二区三区| 99热成人| 日韩av高清| 九九超日本| 五月天婷综合| 偷偷狠狠久久婷婷五月天| 色欲婷婷夜夜| 婷婷五月丁香网| 五月激情综合美女久久| 色99日韩| 久机视频这只有精品| 来吧亚洲综合网| 超碰成人免费| 丁香五月婷婷五月基地| AV在线大香蕉| 丁香伊人激情| 亚洲丁香五月| 99婷婷| 91久久久久久| 色婷大香蕉| 欧美视频五区| 婷婷俺去也| 色五月婷婷网| 婷婷五月另类网站| 九九综合伊人| 夜夜夜夜做天天天做无码视频| 激情网开心网| 色婷婷88| 国产精品成人AV在线观看春天| 99干在线视频| 性色欲情 网站| 无码激情精品色婷婷久久久久| 九九色视频| 婷婷丁香花五月天| 五月丁香六月激情| 国产综合A片| 精品成人久久久久久久_一二三四视| 久久婷婷成人视频| 色婷婷的五月天| 成人片在线播放| 亚洲国产精品二二三三区| 一区二区你懂的| 五月天综合激情网| 丁香五月天啪啪激情综和网 | 久久综合九九| 国产精品成人网站| 9久久精品| caopeng97日韩| 伊人久久五月天综合| 五月丁香六月激情在线| 五月丁香偷拍| 五月丁香 久久久| 亚洲第一综合| 色婷婷色综合久久精品V| 性爱激情小说AV五月丁香花| 丁香五月激情婷婷激情| 欧美色色色色色色色| 亚洲天天操| 人人操婷婷| 婷婷永久在线| 色噜噜狠狠一区二区三区| www.天天干| jiuse91在线| 亚州激情在线视频| 激情av| 成人国产网| 色色色色色级无码| 欧美性爱五月天| 久久九九热38| 六月丁香啪| 在线观看亚洲视频影院| 99国产97在线,| 开心 五月 综合| 天天干天天拍| 国产性爱在线| 五月久久噜噜| 色婷婷小说| 99re在线免费视频| 狠狠做六月爱婷婷综合aⅴ| 五月婷婷在线免费观看| 97啪在线观看视频| 日本色婷婷综合| 97碰| 影音先锋按摩| 中文激情网| 97艹| www.99热这里只有精品| 色综合中文综合网| 丁香亭亭久久| 久久五月天婷婷| 97人人操人人拍| 天天噪夜夜爽| 成人免费120分钟啪啪| 任你爽视频| 日韩精品一区二区亚洲AV观看| 激情内射人妻1区2区3区| 99热这里| 丁香六月综合激| 天天干天天 亚洲| 性爱久久| 狠狠夜夜五月丁香| 五月丁香婷婷色| 午夜免费试看| 五月丁香久久| 996er在线观看| 欧美在线干| 99视频九九热| 中文字幕不卡+婷婷五月| 久九九热| 琪琪色五月天| 青青草原亚洲天堂| 久久久久久久97| 丁香色五月AV在线| 五月丁香啪啪啪| 色色丁香色五月| 99热这里精| 黄色三级毛片中字| 色播五月丁香| 欧美天堂婷婷日韩| 婷婷色正月| 玖玖玖婷婷婷| 在线观看免费狠狠色丁香香综合| 五月婷婷深深爱| 国产成人高清| 亚洲综合网区| 丰满少妇乱A片无码| 丁香伊人激情| 国产黄色大片| 色综合丁香| 综合色播| 欧美交换配乱吟粗大25P| 桃色激情婷婷伊人网| 激情五月天综合网| 婷婷丁香五月综合激情视频| 97在线/亚洲| 91九色中文| 999婷婷综合| 激情性爱五月| 无码少妇高潮喷水A片免费| 激情五月天无码| 婷婷五月欧美综合| 无码区婷婷五月花开| 97色啪| 超碰碰碰碰| 另类婷婷丁香| 91亚洲免费片| 日日干天天爽| 天天 青草 丝袜制服 在线| 欧美人人超级碰| 99综合网| 五月婷AV| 91嫩草久久| 久久国产色| 久久草婷婷丁香网站| 9色小视频在线观看| 96精品久久久久久久久| 久久婷出差欧美色两性综合网| 亚洲综合视频八| 这里只有精品在线观看视频| 丁香五月综合色婷婷| 九九99精品视品| 婷婷在线视频| 丁香狠狠| 色五月激情综合网| 激情精品久久| 五月开心久久| 狠狠穞A片一區二區三區| 丁香综合婷婷开心激情网| 亚洲xx在线| 成人网在线视频| 情情五月天色| 日韩综合网络男女香蕉a片| 香蕉久久国产AV一区二区| 欧美VA在线| 天天日天天添| 亚洲顶级VA在线观看-高清完整版在线影院观看-S022AV | 日本一级淫| 久久机热/这里只有精品| av九九| 婷婷六月香| 99热在线精品观看| 色久综合| 色婷婷五月天小说网| 丁香五月日韩| 久久久九九视频精品18| 免费视频在线观看的网站| 婷婷色片| 色久天| 99爽视频| 五月间天堂综合| 国外亚洲成AV人片在线观看| 亚洲人妻av| 99这里只有| 66久久视频在线| av国产精品偷| 日日噜噜久久婷婷五月天| 久久久人妻| 99熟女| 色亚洲婷婷| 狠狠久久婷婷| 黄色91在线观看| 丁香婷婷久久| 五月丁香啪啪| 日本不卡中文字幕| 99性爱| 亚洲狠狠狠| 婷婷六月激情小说网| 五月丁香少妇| 玖玖五月丁香| se色综合网| 婷久久久| 欧美久久久中文字幕| 亚洲视频一区| 五月天六月色| 国产成人综合网| 色婷婷五月天成人网| cc精品国产性传播| 97色色在线视频| 婷婷激情五月综合丁香社| 99热这里只有精品国产免费| 大香蕉久久伊人婷婷五月丁香| 182TV大香蕉| 碰久久精品w| 五月丁香婷婷五月色| 黄色激情五月天| 99这里有精品免费| 激情五月图| 婷婷六月丁香开心深深爱| 日韩另类| 亚洲五月天第一综合干| 久久五月视频| 日韩一级A片黄色| 色色色婷婷五月| www久久艹| 婷婷综合视频| 视频综合网| 五月天婷婷午夜丁香| 激情五月天在线观看色婷婷| 99热思思在线观看| 99热这里只有精品33| 五月天婷婷伊人| 午夜爱爱爱成人| 五月丁香网中文字幕| 五月色 亚洲| 狠狠干激情五月| 激情5月天天天| 五月综合影院| 五月激情天| 九九热在线精品视频| 综合婷婷都市激情| 欧美色五月| 色播五月婷婷| 思思久久99热只有频精品66| 五月激情综合婷婷| 色婷婷91| 五月婷婷www| 色色色综合色| 激情婷婷内射| 99er视频在线| 色丁香五月综合网| 99热精品在线| 99超级碰免费视频| 久久探花91swag| 九九这里有精品| 激情丁香社区| 另类图片天天影视在线观看| 九九热只有这里是精品| 成人.在线日韩| 五月天另类小说久久小说网| 99超级超级超级碰| 中文无码婷婷| 袁子仪视频观看| 亚洲最大视频网站| 99性爱精品| 色五月成人| 激情五月婷婷五月丁香五月开心五月 | 性爱111111| 婷婷五月综合欧美在线播放| 婷婷狠狠97| 中文无码婷婷| 9999热这里只有精品| 九九热在线视频观看| 五月丁香91| 国产一区二区三区影院| 亚洲午夜一区二区| 九九热九九热精品| 久久综合五月天| 99亚洲视频| 婷色综合| 夜夜涩涩涩| 俺去也五月| 激情五月天影院| 婷婷97色| 9色在线| 婷婷五日b| 丁香婷婷色六月| 丁香六月婷婷综合| 狠狠色中色| 狠狠色五月| 1024在线一区| 久操激情| 国产精品色婷婷AV综合色色| 国产激情久久久| 婷婷丁香五月激情密臀av| 大波美女VA网站| 99在线资源| 久久九九热re6这里有精品| 在线播放中文字幕| 狠狠操天天干| 亚洲99热| 在线VA视频| 亚洲天堂99| 91色色色视频| 丁香伊人综合| 看全色黄大色大片| 思思热99er| 五月天天丁香婷婷在线中| 色婷婷久久综合丁香五月| 久超超碰| 丁香色影院| 99热日本| 熟女少妇内射日韩亚洲| 9+1视频网址| 五月婷婷激情五月| 亚洲国产精品VA在线看黑人| 国产成人+综合亚洲+天堂| 中文久久婷婷| 婷婷久久天堂网| 色 五月婷婷基地| 强伦轩人妻一区二区电影| 加勒比日本一区二区三区| 激情黄色小说五月天| 99爱在线视频| 97视频91| 色九亚洲| 天堂久久性| 五月天涩涩| 99性视频| 国产伦理精品高清在线观看网站一区二区| 99热热这里只精品996小说| 手机在线视频观看9| 久久人妻系列| 欧美成人猛片AAAAAAA| 九九sese| 狠狠操狠狠| 思思热天天看| 五月丁香六月成人| 99er6免费视频热播| 日本三级韩三级99久久| 丁香五月六月久久综合 | 丁香五月综合色婷婷| 三级黄网站| 一本久道综合色婷婷五月| 丁香花操逼| 国产婷婷五月色情综合| 成人va在线| 九九精品视频在线观看| 99riAV成人在线视频| 亚洲精品五月| 99视频日韩| 色五月亚洲| 狠狠干综合网| 色综合久久888| 久久综合播放| 色三级色三级| 婷婷五月丁香综合亚洲 | 狠狠色丁香久久| 色色色色色色色色色色色色色97| 婷婷五月综合久久中文字幕| 丁香五月婷久久| 激情五月深爱五月| 亚洲12p| 婷婷五月综合欧美在线播放| 亚洲综合色婷婷文学| 开心五月婷婷婷美女| 久久久国产精品黄毛片| 狠狠干伊人| 97在线日韩| 五月婷婷在线观看黄| 午夜亚洲国产精品av一区二区| 天天干天天做| 欧美综合五月丁香六月婷| 婷婷五月天激情文学| WWW.激情| 色婷婷亚洲综合网站| 五月天播播中文字幕| 东京热伊人| 亚洲精品99| A网在线欧洲| 婷婷色五月天色| 任你草| 五月天激情网址| 国产亚洲精品AAAAAAA片| 五月激情综合深爱| 玖玖爱资源站| 五月天婷婷青青草| 97人人看| 五月开心婷婷| 激情av网| 天天干,夜夜爽| 青草热视频这里只有精品| 人妻中文av| 99亚州综合精品成人网| 亚洲婷婷成人五月天| 99五月婷| 99视频精品在线| 色色色色色色色色色色色色色五月天 | 超91热| 五月丁香色婷婷色| 狠狠操狠狠干综合| 婷婷丁香激情综合色情| 被强行糟蹋的女人A片| 激情五月婷婷色播网| www.色婷婷| 99色在线观看视频者| 婷婷五月天色色| 婷婷五月丁香综合亚洲| 狠狠综合久久综合| 超碰狠狠操| 色五月五月天色婷婷色五月| 国熟女视频| 激情五月天啪啪| 日韩AV中文在线观看| 亚洲成人在线免费| 婷婷色五月色| 综合狠狠五月婷婷| 色色网站日本91| 九九無妻| 久久伊人9| 无码人妻一区二区三区免费九色| 极品色丁香| 操逼国产91| 五月婷婷黄色网址| 九九在线精点品| 激情九九六月激情免费视频| 亚洲男人的天堂婷婷色五月| 91婷婷丁香五月天免费视频网站| 婷婷九月丁香中文| 中文字幕丰满孑伦无码专区| 婷婷金品综合视频| 久久五月天网| 成人丁香婷婷| 亚洲妇女熟BBW| 99热欧美| 五月婷婷激情久久| 永久地址 色| 日本天天综合| 天天噜日日噜综合无码| 五月花激情网| 就爱日五月天| 五月婷婷影视| 亚洲情综合五月天| 色香蕉影院| 久久综合激情| 五月天婷婷色| 精品人妻一区二区| 日本va欧美va欧美精品88| 26uuu欧美亚洲日韩| 综合五月天亚洲婷婷| 内射综合网| 国模狼狼| 人人妖人人97| 久久性视频| 亚洲另类在线观看| www.色婷婷| www,久久久| 九九大香视频| 九九热婷婷| 色婷婷六月天| 九九成人| 婷婷激情五月天在线| 99色在线观看| 天天干天天玩天天夜天天射天天操天天日蜜臀少妇 | 天天日日爽| 开心五月婷婷激情网| 五月综合在线婷婷图片| 99区视频| 五月天色婷婷av| 色婷婷五月天激情综合| 中文字幕日韩无码制服诱或| 深爱开心激情网| 天天干天天日日| 午夜婷婷六月天| 99免费视频网| av色色国产| 五月丁香六月婷婷色情| www久久艹| www.精品99| 亚洲色频| 99在线观看视频| 久久婷婷色| 天天干夜夜想| 26uuu精品一区二区| 九色91视频| 91欧美| 日韩成人免费电影| 精品香蕉99久久久久网站| 激情性爱五月天网页| 欲色人妻| 婷婷五月丁香91| 色综合久久888| 日本精品人妻无码77777| 五月婷婷色| 婷婷五月天免费99| 国产色香蕉精品五夜婷| 九九色院| 婷婷丁香社区网| 91综合在线视频| 天天爽人人综合免费7799| 丁香五月婷婷婷婷欧美综合| 色色色色色色综合| 五月天另类激情在线| 99久久99九九99九九九| 99热综合| 丁香五月天婷婷91| 99久热| 日本综合久| 激情www.98com| 日婷婷久久开心| 91精品久久久久久| 大学生高潮无套内谢视频| 五月精品99综合| 色婷婷成人久久| 日本久热| 五月丁香六月婷婷亚洲天堂网站| 久久九九99字幕| 欧美激情综合色综合| 欧美日比视频| 日产精品一线二线三线芒果 | 久久这里只有精品99| 色综合久久久综合久久网| 九九热99在线视频| 久热无码| 色婷婷社区| 激情色色色| 夜夜操狠狠操| 丁香五月婷婷亚洲天堂| 99热很操老逼| 噜噜噜噜噜日本视频| 人人爽天天爽| 超碰免费在线| AV片在线观看| 五月丁香成人| www,婷婷五月天777me,com| 99性爱| 99网| 久久婷婷婷| 人人视频色| 亭亭玉月丁香| 99久热精品在线| 丁香成人综合| 碰碰女| 热婷婷av| 97碰碰人人| 婷婷五月天开心激情网| 综合色播| 香焦网五月天| 丁香五月停停av| 97色婷| 99热免费在线| 激情婷婷五月天| 国精产品一区二区三区| 丁香六月婷婷综情欧美| 天天爽天天爽| 五月丁香啪啪啪| 99久久精品色老| 91久久婷婷人人澡草 | 第四色五月激情网| 欧美在线视频免费播放| 99九九99九九九视频精品| 这里只有视频精品| 在线观看中文字幕| 激情綜合網址| 狠狠狠狠狠狠狠狠| 国产精品久久久久久亚洲毛片| 久久性操| 日日夜夜狠狠| 玖玖九九9999在线观看视频精品| 五月天婷婷丁香蜜桃91| 五月色丁香| 色综合中文| 天天做天天爱天天爽综合网| 久久婷婷免费| 色婷婷色五月丁香| 色五月综合| 深爱婷婷基地| 亚洲操逼片| 在线99精品| 深爱五月日韩| 99精品丁香五月| 亚洲激情无码久久| 99热这里只有精品9| 亚洲综合无码| 色综合射婷婷| 久久一级免费黄色片| 亚洲无码九九| 欧美日韩色色| 天天日婷婷| 色五月婷婷777| wwwss在线观看| 久色网址| 久久99婷婷| 激情五月丁香五月| 五月丁香欧美综合| 先锋资源婷婷| 色综合久久中文| 欧美成人日韩| 丁香六月天婷婷色| 丁香五月婷婷亚洲另类| 日本乱子人伦在线视频| 丁香婷婷免费| 少妇性按摩无码中文A片| 99在线爽| 我淫我色婷婷五月天激情四射| www.日日夜夜| 无码人妻少妇色欲AV一区二区| 色六月天天激情综合网| 六月色婷婷| 日日操日日射| 色婷婷狠狠久久综合五月| 五月草影视| 俺去婷婷 丁香| 丁香六月无码| 伊人热在线大香蕉| 五月婷婷六月少妇激情| 99五月香婷婷丁香在线视频| 婷婷射婷婷舔| 亚洲综合五月天婷婷| VA婷婷亚洲| 另类小说五月天| 麻豆雪千夏| 婷婷五月综合网| 国产avapp 网| 泰州成人视频| 激情五月婷婷网在线观看| 天天日天天干天天操| 久久成人性爱| 天天色天天操天天射| 丁香六月伊人| 丁香婷婷五月人体| 日本三级日本三级99| 九九家庭影院| 激情婷婷五月丁香啪啪啪| 五月婷婷六月丁香综合| 激情丁香五月综合| 8区视频在线| 99热香港| 少妇AB又爽又紧无码网站| 日本操逼九九九九58日本操逼| 久久婷婷草| 久久久五月天| 婷婷五月天偷拍| 六月丁香开心婷婷欧美| 99热新网址| 日韩欧美一级大黄网站| 免费无码毛片一区二区A片| 日日操日日爽| -91九色大屁股| 蜜桃人妻无码AV天堂三区| 天天插天天插天天插| 日韩 mm 不卡| 欧美这里只有精品| 五月中旬婷婷丁香六| 欧美精品啪啪| 欧美性猛交99久久久久99按摩| 色婷婷成人五月| HD久久精品视频| 91狠狠色丁香婷婷综合久久| 久久人妻系列| 日本三级中国三级99| 久久ab| 久热2025无码| 国产超碰av| AV性爱在线| 五月丁香婷婷俺| 色色综合网站| 欧美一级毛卡片无码| 极品人妻VideOssS人妻| 激情五月深爱婷婷| 欧美日综合| 色色色9| 中文在线视频久1| 亚洲久久视频| 丁香五月婷婷偷拍| AⅤ网站在线看| 久久综合干| 婷婷激情五月天小说校园| 97色婷| 九九99偷拍视频| 五月丁香综合| 日本色色色| 99热精品网| 午夜九九九九九九九九九九九九九| 日本强伦片中文字幕免费看| 99亚洲无码| 激情五月深爱五月| 狠狠爱五月婷婷| 伊人大综合| 色五月丁香婷婷| 色情五月综合婷婷| 五月天久久成人| 亚洲精品久久久久久久久久飞鱼| www色色com| 五月婷婷六月丁香色| 丁香八月综合激情| 五月丁香色色网| 婷婷色六月| 五月天综合在线网| 另类精品视频在线观看| 99热免费在线| 久色五月婷婷综合| 三年高清大片免费观看国语| 色五月婷婷91| 日韩五月丁香| 激情五月五月五月婷婷| 婷香五月| 天天操天天曰天天射| 超碰熟女农村在线69| 天天日夜夜拍| AV色婷婷| 99热这里只有精品9| 麻豆五月丁香婷婷| 色亚洲视频| 99re在线视频精品,这里只有精品18,| 亚洲AV无码影院| 日韩久久日| 久久艹 五月天| 天天色粽合合合合合合合| 大陆肏屄视频| 天天干天天操天天上| 天天干,天天操,天天射| 69人人操人人爽| 99亚洲精品综合在线| 日欧一片内射VA在线影院| 五月天激情图| tingtingzonghewang| 天天成人综合| 色婷婷婷av| 久久久精品视频79| 91啪啪视频| 中文AV在线播放| 五月天婷婷狠狠| 成人人操| 色月丁| 色射7856五月天激情四射| 亚洲精品**不卡在线播he| 婷婷字幕在线| 婷婷六月天国产综合| 亚洲AV成人在线观看| 91黄色五月天视频| 日韩免费视频| 99这里只有精品|v| 99在线精品免费视频| 人人爱人人草| 丁香六月激情综合| 久久精品国产AV一区二区三区 | 亚洲欧洲另类图片| ..真实国产乱子伦对白在线_欧| 神马欧美精| 婷婷五月综合啪| 天天天天天天天操| 五月 婷婷 成人| 欧美激情综合五月色丁香| 国产成人99久久亚洲综合精品| 婷婷五月天男人影院色色网| 这里只有精品网站| 色婷另类| 久久久思思热| 亚洲另类在线观看| 五月天婷婷丁香六月| 92久久精品一区二区| 六月五月久久丁香| 操日视频| 丁香五月六月婷婷自拍| 国产成人99久久亚洲综合精品| 色综合香蕉| 玖玖婷婷色五月| 丰满老熟妇BBBBB搡BBB| 色色日本| 潘金莲AAAAAAAAAA| 久久人视频| 亚洲AV网站在线观看| 五月婷在线| 亚洲激情综合| 婷婷五月丁香在线观看| 26UUU亚洲欧美| 青青操绿aaa一区日v| 天天日人人爽| 久久激情天堂| 涩五月婷婷| 亚洲AV永久无码影院黑人| 久久精品63| 操嫩逼电影| 五月涩涩网| 国产婷婷五月天| 五月天激情四射| 人与禽A片啪啪| 久久久精品99| 久久作爱| 人妻久久久久久久久| 91午夜激情| 五月天开心网| 亚洲无AV在线中文字幕| 日韩久久日| 色级婷婷| 久久精彩综合视频| www.六月丁香看AV| 激情人妻综合| 青柠影视免费高清电视剧| 日本99色| 国产乱子轮XXX农村| 九月大香蕉| 日日干五月天婷婷| 激情小说婷婷五月| 操人91| 91久久久久久久久久18| 超碰三级片| 狠狠色五月| 精品在线网站| 日本V在线观看不卡视频网站| 91丁香五月| 亚洲99激情| 激情五月天婷婷在线网址发给我| 熟妇无码乱子成人精品| 伊人色综合久久久| 亚洲色色精品| www.超碰在线| 久久久9久| 五月天伊人av| 五月婷视频| 成人无码精品1区2区3区免费看| 99玖玖在线视频| 激情六月丁香综合| 翔田千里 50岁 无码| 99热最新国内| 九九家庭影院| 蜜臀av粉嫩av懂色av| 久草 tingting| 色噜噜,噜噜色| 六月色播| 91传媒无码人妻精| 精品国产人人爱人人| 色婷婷a v| 99久热精品在线| 婷婷丁香五月噜噜噜| 五月天伊人| 69凹凸成人综合网| 182TV大香蕉| 91干婷婷| 九月色婷婷| 啪啪99| 日韩精品呦呦va| 草美女在线观看视频在线播放| 99综合网| 国产女人十八水真多1| 婷婷久久婷婷色五月| 色五月综合| 性爱七区| 99热在线观看免费| 久久久99久久| 天堂爱啪啪| 婷婷基地五月色| 无码色| 国产毛片操B| 人人人人人人人人人草| 狠狠干,狠狠操| 激情熟女网| 五月婷婷网站| 超碰免费人| 无码se| 婷婷五月天久久| 欧美在线97| 五月婷婷开心网| 狠狠色婷婷丁香五月| 激情五月丁香在线观看直播| 日撸夜撸日操| 中字幕视频在线永久在线观看免费 | 日韩无码专区| 男同91| 91色逼| 色五月天成人| AV无码免费| 97精品人人A片免费看| 激情网综合| 思思久久99热| 婷婷五月丁香五月| 丁香五月婷婷色五月| 激情五月天激情综合网| 97人人射| 好好干Av| 丁香婷婷激情网站| 国产在线激情视频| 久久婷综合网| 色色COm| 爱99干99| 天天搞夜夜爽夜夜爽| 婷婷五月综合啪| 五月婷婷狠狠久久| 丁香五月综合| 激情婷婷内射| 99在线精品视频| www.99热国产| 秋霞AV吧| 久久久区区一久久久久久| 99久久久精品| 夜夜骑天天操| 日韩无码91| 99福利视频| www,99热在线观看| 日韩三级高清无码| 在线观看欧美| 香蕉国产2013| 欧亚洲在线高清视频| 天天干电影| 深爱激情四射| 日韩在线视频9色| 丁香六月婷婷综合网| 极品人妻VIDEOSSS人妻| 天天草天天舔| 北条麻妃九九九国产精品视频| 五月婷婷丁香在线| 婷婷社区五月天| 五月丁香啪综合| 99精品在线| 六月天六月婷| 婷婷五月天天激情| 99这里有精品视频| 婷婷91| 99国产精品久久久久久久久久久| 五月天婷婷激情春色小说| 丁香9月婷婷| 一起草性爱不卡视频| 久久婷婷色| 久久99热这里只频精品6学生| 精品人妻久久久| 绿色小导航AV| 99热这里都是精品| 激情网第九色| 丁香五月社区| 婷婷五月六月丁香综合| 亚洲无aV在线中文字幕| 九九这里都是精品| 天天干天天日天天插| 色婷婷久久9.com| 婷婷伊人五月天| 99re热视频这里只有综合亚洲|