亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

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

MySQL分庫分表實(shí)戰(zhàn):分片鍵選型與遷移避坑指南

MySQL分庫分表實(shí)戰(zhàn):分片鍵選型與遷移避坑指南 做 MySQL 核心存儲(chǔ)的團(tuán)隊(duì)只要數(shù)據(jù)量和并發(fā)一起來幾乎都會(huì)遇到同一個(gè)靈魂拷問到底要不要上分庫分表如果要上是垂直分庫還是水平分表分片鍵選誰才不會(huì)踩雷這些坑我都在生產(chǎn)環(huán)境里踩過。今天這篇就按自己的復(fù)盤經(jīng)驗(yàn)把分庫分表路上最容易翻車的地方攤開講透什么時(shí)候該拆、三種拆分方式怎么選、分片鍵怎么定、遷移分幾步走以及上線之后最常見的幾個(gè)深坑怎么排查。適合正在評(píng)估拆分方案、或者已經(jīng)被線上大表壓得喘不過氣的開發(fā)同學(xué)也適合準(zhǔn)備做數(shù)據(jù)庫架構(gòu)升級(jí)的團(tuán)隊(duì)當(dāng)參考。1. 先別急著拆分庫分表是一筆“高成本負(fù)債”1.1 什么信號(hào)出現(xiàn)才該動(dòng)手分庫分表和加索引、調(diào)SQL不一樣它不是一項(xiàng)“性能優(yōu)化手段”而是一次存儲(chǔ)架構(gòu)的重新設(shè)計(jì)。一旦上車SQL寫法要改、事務(wù)邊界要改、查詢習(xí)慣要改連運(yùn)維方式都要跟著變。所以我的第一個(gè)建議是先用門檻擋住絕大多數(shù)不該拆的場(chǎng)景。什么時(shí)候才真正需要考慮拆分我從實(shí)際運(yùn)維中總結(jié)了四個(gè)硬信號(hào)至少命中兩三個(gè)再動(dòng)手單表行數(shù)超過千萬級(jí)別且持續(xù)增長索引層級(jí)變深寫入和查詢都明顯退化數(shù)據(jù)庫連接數(shù)長期打滿應(yīng)用側(cè)不斷報(bào)Too many connections加連接數(shù)上限也沒用高峰期 QPS 或 TPS 已經(jīng)逼近單實(shí)例硬件上限CPU 常年 70% 以上SQL 優(yōu)化和參數(shù)調(diào)優(yōu)都試過了寫入容量成為瓶頸比如訂單、日志、流水這類只增不改的數(shù)據(jù)單庫磁盤和寫入速度都跟不上業(yè)務(wù)增速。這里有個(gè)容易誤判的地方單表 500 萬行、偶爾慢查詢不一定需要分表。很多慢查詢純粹是索引沒建對(duì)或者 SQL 寫法本身有問題。我見過一個(gè)項(xiàng)目一張表兩千萬數(shù)據(jù)業(yè)務(wù)方嚷嚷著要拆表結(jié)果我一看日志大部分慢查詢都是因?yàn)長IKE %xxx%這種無法走索引的寫法。把查詢改寫加聯(lián)合索引之后性能直接翻了十倍分表需求自然消失了。1.2 常見的兩種誤判緩存能解決的事別用分庫分表扛除非數(shù)據(jù)庫已經(jīng)到了物理極限否則優(yōu)先考慮其他手段。這里說兩個(gè)我反復(fù)跟團(tuán)隊(duì)強(qiáng)調(diào)的“不要把分庫分表當(dāng)萬金油”的場(chǎng)景。第一是讀多寫少的場(chǎng)景。如果 90% 流量是查詢先上緩存。Redis 或本地緩存可以扛掉絕大部分讀壓力數(shù)據(jù)庫壓力會(huì)大幅下降。分庫分表解決的是“存儲(chǔ)容量”和“寫入吞吐”的問題不是“傻讀”的問題。你用分庫分表去頂讀流量相當(dāng)于雇了一整支裝修隊(duì)來換一個(gè)燈泡。第二是歷史數(shù)據(jù)歸檔沒做。很多業(yè)務(wù)表 90% 的數(shù)據(jù)是三年以上的冷數(shù)據(jù)平時(shí)根本不會(huì)被查詢命中。這種場(chǎng)景正確的做法是先做冷熱分離——把半年或一年前的數(shù)據(jù)遷到歸檔表、歸檔庫甚至直接放到數(shù)倉或?qū)ο蟠鎯?chǔ)里。我拆過一個(gè)用戶操作日志表拆完發(fā)現(xiàn)其中 80% 是兩年前的過期日志早該歸檔了白白為這些冷數(shù)據(jù)花了大量分庫分表的成本。1.3 從單庫到分布式存儲(chǔ)的整體演進(jìn)路線分庫分表不是一步到位的業(yè)界踩了這么多年坑基本沉淀出一條比較穩(wěn)妥的演進(jìn)路徑先做 SQL 優(yōu)化和索引優(yōu)化把能省的資源都省下來引入緩存層解決熱點(diǎn)讀引入讀寫分離主庫寫、從庫讀分?jǐn)傋x壓力做垂直分庫按業(yè)務(wù)域把不同模塊拆到不同庫做垂直分表把單個(gè)大表的熱點(diǎn)字段和冷字段拆開最后才做水平分表解決單表數(shù)據(jù)量過大和單庫寫入瓶頸的問題。這個(gè)順序本質(zhì)上是按照“成本從低到高、收益從明顯到隱蔽”來排的。前面幾步做完很多系統(tǒng)已經(jīng)能扛住相當(dāng)高的并發(fā)根本走不到最后一步。反過來如果跳過前幾步直接上水平分表你會(huì)發(fā)現(xiàn)拆完之后 SQL 不能隨便 join 了、事務(wù)要改分布式事務(wù)了而數(shù)據(jù)庫本身的問題比如一條爛 SQL 沒優(yōu)化依然存在只是被你拆碎了而已。2. 垂直分庫、垂直分表、水平分表三種拆分一次講清2.1 垂直分庫按業(yè)務(wù)域把不同的表拆到不同的庫垂直分庫的核心思路是“按業(yè)務(wù)模塊切分?jǐn)?shù)據(jù)庫”。比如一個(gè)電商系統(tǒng)用戶、訂單、商品原來在同一個(gè)庫mall_db里現(xiàn)在拆成user_db、order_db、product_db三個(gè)庫分別歸屬用戶中心、訂單中心、商品中心。這種拆分通常伴隨微服務(wù)化進(jìn)行訂單服務(wù)的庫只允許訂單服務(wù)訪問其他服務(wù)要想拿數(shù)據(jù)必須通過接口調(diào)取而不是直接連庫。所以垂直分庫解決的不僅是單庫容量和連接數(shù)壓力更重要的是劃清了數(shù)據(jù)邊界避免一個(gè)庫塞滿所有業(yè)務(wù)表、互相爭(zhēng)搶連接和 IO。垂直分庫的難點(diǎn)不在技術(shù)而在組織架構(gòu)。如果你們的服務(wù)還是單體應(yīng)用拆了庫之后代碼還是全部寫在一起那么每次查詢都要跨庫、每個(gè)事務(wù)都要跨庫復(fù)雜度會(huì)陡增。我的建議是垂直分庫必須跟在服務(wù)拆分后面走業(yè)務(wù)邊界沒理清楚之前不要?jiǎng)訋臁?.2 垂直分表把一張大表的字段拆成兩張或多張表垂直分表是把一張列很多的表按照字段的訪問頻率和關(guān)聯(lián)度拆成多張表。最常見的是“主表 擴(kuò)展表”模式。舉個(gè)例子用戶表user有 30 個(gè)字段其中id、name、mobile、status這類字段每次查詢都要用到是熱數(shù)據(jù)而avatar、signature、last_login_ip、register_source這類字段很少用但是占存儲(chǔ)空間是冷數(shù)據(jù)。那就拆成user_main和user_extend兩張表通過user_id關(guān)聯(lián)。這里有個(gè)細(xì)節(jié)容易被忽略垂直分表拆的是“行寬度”它不能解決單表行數(shù)過多的問題。想象一張表是 1000 萬行、每行 2KB另一張表同樣是 1000 萬行、每行 100 字節(jié)前者的掃描成本遠(yuǎn)高于后者。垂直分表就是通過“瘦身”讓單頁能容納更多行從而降低 IO 和緩存淘汰率。但對(duì)于行數(shù)爆炸導(dǎo)致的寫入瓶頸它無能為力。2.3 水平分表按行拆分才是解決“大表”的根本手段水平分表是把同一張表的行數(shù)據(jù)按照某個(gè)字段的取值分散到多張結(jié)構(gòu)完全相同的子表中。比如訂單表按user_id模 16拆成order_0到order_15共 16 張表。水平分表的意義在于單表行數(shù)被控制在可接受范圍內(nèi)索引體積減小B樹層級(jí)變淺寫入和查詢都能保持穩(wěn)定。同時(shí)如果把不同子表放到不同庫的不同實(shí)例上還能同時(shí)攤薄存儲(chǔ)和計(jì)算壓力。這也是標(biāo)題里“水平分表”和“垂直分庫”并列出現(xiàn)的原因——它們一個(gè)解決“表太大”一個(gè)解決“庫太雜”是不同維度的問題實(shí)踐中最優(yōu)方案往往是兩者組合。2.4 三種拆分方式對(duì)比速查表對(duì)比維度垂直分庫垂直分表水平分表拆分維度按業(yè)務(wù)模塊按字段冷熱按行數(shù)據(jù)范圍/哈希解決的核心問題連接數(shù)、單庫容量、業(yè)務(wù)邊界單表行寬、IO浪費(fèi)單表行數(shù)多、寫入瓶頸拆分對(duì)象庫與表單張寬表單張超大數(shù)據(jù)量表對(duì)應(yīng)用透明性需改造訪問方式需改造SQL需引入路由層典型代價(jià)分布式事務(wù)、接口調(diào)用需要額外一次查詢跨分片查詢、擴(kuò)容麻煩適合場(chǎng)景微服務(wù)架構(gòu)下的多業(yè)務(wù)域字段多、有冷熱之分的大寬表日志、訂單、流水等持續(xù)增長的表一句話總結(jié)垂直是“分家”把不同類型的東西分開水平是“分灶”把同一類的東西均勻分配到多個(gè)鍋里。兩者不沖突真正的生產(chǎn)架構(gòu)里經(jīng)常先用垂直分庫把服務(wù)邊界劃開再對(duì)核心大表做水平分表最后配合垂直分表把寬表瘦身。3. 分片鍵選型決定成敗的關(guān)鍵決策3.1 為什么說分片鍵是“第一重要決策”分片鍵Sharding Key是水平分表時(shí)用來決定某一行數(shù)據(jù)應(yīng)該落在哪張子表的字段。它決定了路由的效率和查詢的方式選錯(cuò)后面所有環(huán)節(jié)都會(huì)跟著變形。我見過最典型的翻車案例某團(tuán)隊(duì)訂單表按order_id做哈希分片結(jié)果業(yè)務(wù)上大量查詢是“查某個(gè)用戶最近的訂單”。查詢條件里沒有order_id只有user_id于是每次都要把 16 張子表全掃一遍再合并。分表之后查詢反而變慢了團(tuán)隊(duì)一度想要回滾。這里本質(zhì)問題在于路由規(guī)則只認(rèn)識(shí)order_id但業(yè)務(wù)高頻查詢不認(rèn)識(shí)order_id。數(shù)據(jù)被均勻分散到了各個(gè)分片卻無法從查詢條件定位到具體分片分布式架構(gòu)最核心的“數(shù)據(jù)本地性”優(yōu)勢(shì)直接作廢。3.2 分片鍵的五條選擇標(biāo)準(zhǔn)根據(jù)實(shí)際經(jīng)驗(yàn)一個(gè)合格的分片鍵應(yīng)該同時(shí)滿足以下條件查詢覆蓋率高高頻查詢條件里必須帶上這個(gè)字段最好能直接定位到一個(gè)分片區(qū)分度足夠高字段取值足夠分散不能像status只有幾個(gè)可選值否則某個(gè)分片會(huì)堆積大量數(shù)據(jù)穩(wěn)定不可變字段值一旦生成就不會(huì)修改。否則用戶更換手機(jī)號(hào)后原來按手機(jī)號(hào)分片的數(shù)據(jù)定位全部失效產(chǎn)生方式有規(guī)律ID 類字段要有全局唯一性且最好由應(yīng)用層或者發(fā)號(hào)器生成而不是依賴數(shù)據(jù)庫自增主鍵訪問均勻、無熱點(diǎn)字段的取值分布要均勻盡量避免少數(shù)值貢獻(xiàn)了絕大多數(shù)流量。實(shí)際項(xiàng)目里不會(huì)有一個(gè)字段完美命中所有標(biāo)準(zhǔn)但當(dāng)業(yè)務(wù)不止一個(gè)高頻查詢維度時(shí)就要根據(jù)業(yè)務(wù)權(quán)重做取舍。電商的訂單表就是最典型的例子買家會(huì)高頻查“我的訂單”賣家會(huì)高頻查“店鋪訂單”運(yùn)營還會(huì)按訂單號(hào)精查。三個(gè)維度互相沖突不可能同時(shí)作為分片鍵。這時(shí)候要回到業(yè)務(wù)本質(zhì)看哪個(gè)維度流量最大、SLA要求最高舍棄部分查詢的可路由性用“基因法”或者數(shù)據(jù)冗余來補(bǔ)償。3.3 三種主流路由方案哈希取模、范圍分片、一致性哈希分片鍵定好之后還要選路由算法。路由算法決定了“按分片鍵的值計(jì)算出數(shù)據(jù)落在哪張子表”的具體規(guī)則。哈希取模是最簡(jiǎn)單直接、也是最常用的方案。分片鍵的值經(jīng)過哈希函數(shù)映射后對(duì)分片總數(shù)取模。比如總分成 16 片hash(user_id) % 16結(jié)果落在 0 到 15 之間對(duì)應(yīng)table_0到table_15。# 偽代碼應(yīng)用層路由邏輯 def route(user_id: int, db_num: int, table_num: int): total db_num * table_num idx hash(user_id) % total # 邏輯分片號(hào) db idx // table_num # 物理庫編號(hào) table idx % table_num # 物理表編號(hào) return fdb_{db}.table_{table}哈希取模的優(yōu)點(diǎn)是人話能聽懂的簡(jiǎn)單數(shù)據(jù)分布也均勻。最大缺點(diǎn)是分片數(shù)一旦確定后續(xù)擴(kuò)容極其痛苦。從 16 片擴(kuò)成 32 片絕大多數(shù)數(shù)據(jù)的路由結(jié)果都會(huì)變化意味著存量數(shù)據(jù)要大面積遷移。如果沒有一套完整遷移方案擴(kuò)容就是一次小規(guī)?!皳Q庫手術(shù)”。范圍分片是按分片鍵的值區(qū)間劃分比如訂單號(hào) 1 到 1000 萬放在table_01000 萬到 2000 萬放在table_1。這種方案天然便于范圍查詢擴(kuò)容時(shí)只需要新增一片不用動(dòng)舊數(shù)據(jù)。缺點(diǎn)是數(shù)據(jù)分布可能嚴(yán)重傾斜月初訂單少月底訂單多熱點(diǎn)全壓在一張表上。所以范圍分片比較適合時(shí)間序列數(shù)據(jù)比如日志、流水不適合高并發(fā)訂單。一致性哈希是為了解決“增加/減少節(jié)點(diǎn)時(shí)遷移量過大”而設(shè)計(jì)的。它把哈希值空間組織成一個(gè)環(huán)形結(jié)構(gòu)每個(gè)分片負(fù)責(zé)環(huán)上一段區(qū)間數(shù)據(jù)落到哪個(gè)分片由它在環(huán)上的位置決定。節(jié)點(diǎn)增減時(shí)只有相鄰分片的數(shù)據(jù)需要遷移。為了均衡分布一致性哈希還引入“虛擬節(jié)點(diǎn)”概念讓每個(gè)物理節(jié)點(diǎn)在環(huán)上擁有多個(gè)位置。但一致性哈希的實(shí)現(xiàn)復(fù)雜度高、排查路由相對(duì)困難MySQL 分庫分表里用好的人遠(yuǎn)遠(yuǎn)少于用哈希取模的。三種方案我用一張表收一下路由方案數(shù)據(jù)分布特點(diǎn)擴(kuò)容代價(jià)實(shí)現(xiàn)復(fù)雜度適用場(chǎng)景哈希取模均勻高需遷移大量數(shù)據(jù)低大多數(shù)在線業(yè)務(wù)范圍分片易傾斜低只需新增分片低日志、時(shí)序流水一致性哈希較均勻中只遷移相鄰數(shù)據(jù)高節(jié)點(diǎn)頻繁變化的分布式系統(tǒng)3.4 分片鍵選錯(cuò)后怎么補(bǔ)救如果上線后發(fā)現(xiàn)分片鍵選錯(cuò)了不要慌有幾個(gè)止損手段。小規(guī)模業(yè)務(wù)可以用“索引表”兜底單獨(dú)建一張映射表保存分片鍵和行 id 的對(duì)應(yīng)關(guān)系。比如訂單表按user_id分片但運(yùn)營經(jīng)常用order_id查單那就維護(hù)一張order_user_index表通過order_id查出user_id再定位到具體分片。代價(jià)是每次精查多一次索引表查詢但至少能保證功能可用。另一種思路是“基因法”。設(shè)計(jì)主鍵時(shí)把分片鍵的某些位種進(jìn)主鍵里。比如order_id的末尾 4 位取自u(píng)ser_id的末尾 4 位這樣拿到order_id就能直接算出user_id對(duì)應(yīng)的分片號(hào)不需要額外查詢。這個(gè)方案很棒但是要求生成 ID 的規(guī)則從一開始就設(shè)計(jì)好中途很難改。最實(shí)在的提醒是分片鍵的選型必須在拆分立項(xiàng)階段就拉上所有業(yè)務(wù)方把高頻查詢 SQL 全部列出來逐一確認(rèn)哪些查詢必須路由到單分片、哪些可以接受跨分片聚合。這一步花一兩天時(shí)間能省掉后面半年的返工。4. 從單庫到分庫分表的落地實(shí)操四步遷移法4.1 第一步容量預(yù)估與分片數(shù)規(guī)劃動(dòng)手遷移前第一件事是計(jì)算分片數(shù)量。分片數(shù)既不能太少又不宜過壕我的經(jīng)驗(yàn)公式是按未來三年的業(yè)務(wù)增長預(yù)估數(shù)據(jù)總量再除以單表行數(shù)目標(biāo)上限。假設(shè)當(dāng)前訂單表 8000 萬行年增速約 50%三年后總量大約 2.7 億行。單表行數(shù)控制在 500 萬到 800 萬行以內(nèi)是相對(duì)舒適的狀態(tài)取 800 萬作為閾值那么分片總數(shù) 2.7 億 / 800 萬 ≈ 34 片。為了避免將來擴(kuò)容我會(huì)直接取 2 的冪次方物理上分成 64 片。為什么取 2 的冪次因?yàn)榉制瑪?shù)從 64 擴(kuò)到 128 時(shí)只需要把原分片編號(hào)的最高位從 0 變 1遷移量恰好是一半數(shù)據(jù)可以用二進(jìn)制位運(yùn)算輕松做平滑擴(kuò)容。這是老 DBA 都懂的“二次擴(kuò)容”技巧。分片鍵如果選擇user_id那么路由邏輯就是hash(user_id) % 64。為了分?jǐn)倢憠毫?4 張表不要全放在一個(gè)實(shí)例里建議按 4 庫 × 16 表 或者 8 庫 × 8 表 布局。庫和表的組合方式會(huì)影響后面的連接數(shù)分配和運(yùn)維復(fù)雜度建議單獨(dú)畫一張拓?fù)鋱D標(biāo)注清楚每個(gè)物理庫上有哪些表、通過哪些分片范圍路由。4.2 第二步全局唯一 ID 生成方案先行分庫分表之后數(shù)據(jù)庫自增主鍵不能再用了——因?yàn)槊總€(gè)分片都有自己的自增起點(diǎn)多張表生成的 ID 會(huì)重復(fù)全局唯一性無法保證。所以分片鍵如果是主鍵必須在遷移前上線全局 ID 生成器。業(yè)界用得最多的是雪花算法Snowflake ID。一個(gè) 64 位的長整型 ID由時(shí)間戳、機(jī)器編號(hào)、序列號(hào)組成。它生成的 ID 全局唯一、趨勢(shì)遞增、且不依賴數(shù)據(jù)庫。我建議組合使用應(yīng)用內(nèi)嵌雪花算法生成器避免每次生成 ID 都請(qǐng)求外部服務(wù)減少網(wǎng)絡(luò)開銷對(duì)于需要嚴(yán)格順序的業(yè)務(wù)可以借助數(shù)據(jù)庫發(fā)號(hào)器用一個(gè)獨(dú)立的id_generator表維護(hù)多段步長來避免時(shí)鐘回?fù)軉栴}。這里補(bǔ)一個(gè)我踩過的坑雪花算法強(qiáng)依賴機(jī)器時(shí)鐘如果服務(wù)器做了 NTP 時(shí)間同步偶爾會(huì)出現(xiàn)時(shí)鐘回?fù)軐?dǎo)致生成的 ID 可能重復(fù)。解決方法是發(fā)號(hào)器內(nèi)部保留上一次生成 ID 時(shí)的毫秒時(shí)間戳一旦發(fā)現(xiàn)當(dāng)前時(shí)間小于上次時(shí)間就在內(nèi)存里阻塞等待時(shí)鐘追上或者直接為本次生成微調(diào)偏移量。這段邏輯不復(fù)雜但不能省。4.3 第三步雙寫遷移 歷史數(shù)據(jù)全量同步生產(chǎn)環(huán)境做分庫分表遷移絕對(duì)不能“停服一刀切”。業(yè)界最穩(wěn)的套路是“雙寫 全量 對(duì)賬 切讀”。雙寫的意思是應(yīng)用側(cè)在寫入老庫的同時(shí)把同一份數(shù)據(jù)也寫入分庫分表后的新庫。代碼層面可以用 MQ 異步雙寫也可以用 AOP 加一個(gè)雙寫切面走一個(gè)開關(guān)控制。雙寫階段新庫的寫入路徑就是不間斷接受流量驗(yàn)證發(fā)現(xiàn)路由 bug 或者寫入失敗馬上關(guān)掉雙寫開關(guān)業(yè)務(wù)無感。全量遷移是指把存量數(shù)據(jù)從老庫導(dǎo)入新庫。這里推薦用工具批量做比如mysqldump按主鍵范圍分批導(dǎo)出再導(dǎo)入到分布式表或者用DataX、Canel等數(shù)據(jù)同步工具。必須按主鍵或者時(shí)間游標(biāo)分批處理避免一次性加載幾千萬行把數(shù)據(jù)庫 IO 打滿。整個(gè)過程我建議用流水賬記錄每批遷移多少行、耗時(shí)多久、是否有報(bào)錯(cuò)、對(duì)賬結(jié)果如何。全量遷完之后老庫可能又新增了一批增量數(shù)據(jù)所以還要有一個(gè)增量追平的過程。最簡(jiǎn)單的方式是在遷移期間持續(xù)消費(fèi) binlog把老庫的增量變更同步到新庫直到兩邊數(shù)據(jù)完全追平。4.4 第四步灰度切流與快速回滾數(shù)據(jù)追平之后開始灰度切流。不要一次把全部流量切到新庫按用戶灰度比如先切 1% 的用戶觀察指標(biāo)再逐步放大到 10%、50%、100%。切流階段最需要注意兩個(gè)指標(biāo)一是寫入新庫的失敗率二是分布式查詢的耗時(shí)和報(bào)錯(cuò)率。我見過團(tuán)隊(duì)把流量切到 50% 之后發(fā)現(xiàn)某些跨分片查詢把數(shù)據(jù)庫連接池打爆了因?yàn)榕f庫的查詢是一條 SQL 搞定新庫要并發(fā)查 16 張表再合并結(jié)果單位查詢的資源消耗翻了不止一倍。這時(shí)候要回頭優(yōu)化查詢邏輯把“并發(fā)查 16 張子表”改成“按業(yè)務(wù)維度路由到 1 張表”或者增加結(jié)果合并層的聚合能力才能繼續(xù)放量。灰度環(huán)境里一定要準(zhǔn)備一鍵回滾開關(guān)。萬一新庫出了問題把開關(guān)撥回去流量回落到老庫比在代碼里緊急改 bug 快得多。這個(gè)開關(guān)最好在架構(gòu)設(shè)計(jì)階段就預(yù)留好而不等出問題當(dāng)天再開發(fā)。4.5 實(shí)操過程中的數(shù)據(jù)校驗(yàn)與對(duì)賬技巧遷移過程中我強(qiáng)烈建議做三層對(duì)賬行數(shù)對(duì)賬老庫和新庫每個(gè)分片的行數(shù)總和要一致抽樣字段對(duì)賬按主鍵抽樣比對(duì)關(guān)鍵字段的值是否完全一致指標(biāo)對(duì)賬統(tǒng)計(jì)最近時(shí)間段的寫入量、查詢量看兩邊是否一致。對(duì)賬不是一次性的雙寫期間要持續(xù)跑。我習(xí)慣把對(duì)賬結(jié)果輸出到一張監(jiān)控表設(shè)置閾值告警任何不一致立刻告警、立刻凍結(jié)雙寫防止臟數(shù)據(jù)繼續(xù)蔓延。等穩(wěn)態(tài)運(yùn)行一兩周之后再考慮把老庫降級(jí)為只讀備份庫最終歸檔下線。5. 拆分之后躲不開的四大深坑與排查實(shí)錄5.1 跨分片 Join不能再用一條 SQL 解決分庫分表之后跨分片 Join 基本不可行。兩個(gè)表如果分片鍵不一致數(shù)據(jù)分散在不同的物理庫上SQL 層面無法做 Join應(yīng)用層做內(nèi)存 Join 的成本又高得離譜。我的處理原則是能下沉到數(shù)據(jù)冗余的絕不在應(yīng)用層拼。比如訂單表需要展示商品名稱那就把商品名稱冗余到訂單表里作為冗余字段需要展示買家昵稱就冗余買家昵稱。用空間換 Join這是最直接有效的手段。實(shí)在需要實(shí)時(shí)聚合的可以上異構(gòu)同步方案用 Canal 訂閱 MySQL binlog把數(shù)據(jù)同步到 Elasticsearch 或者 ClickHouse由這些引擎承擔(dān)復(fù)雜的聚合查詢。這個(gè)方案我測(cè)下來非常穩(wěn)但要注意同步鏈路存在秒級(jí)延遲不適合強(qiáng)一致數(shù)據(jù)場(chǎng)景。5.2 跨分片分布式事務(wù)別再迷信強(qiáng)一致性跨分片的事務(wù)想要保持 ACID必須引入分布式事務(wù)方案。常見的有兩階段提交XA、TCC、本地消息表、消息隊(duì)列最終一致性。我的實(shí)際經(jīng)驗(yàn)是業(yè)務(wù)側(cè)盡可能避免跨分片事務(wù)把事務(wù)邊界收斂到一個(gè)分片內(nèi)。具體怎么收斂在設(shè)計(jì)分片鍵階段就要盡量讓一個(gè)事務(wù)涉及的數(shù)據(jù)落在同一個(gè)分片。比如“下單減庫存”如果訂單表和庫存表分片鍵不一樣那一次事務(wù)就跨了兩個(gè)分片如果都按商家 ID 分片同一商家的訂單和庫存天然落在同一個(gè)分片事務(wù)就還是本地事務(wù)。如果實(shí)在無法避免推薦用“本地消息表 MQ”的方案落地最終一致性不要強(qiáng)行上 XA。XA 在低并發(fā)下看起來很美一旦分片數(shù)增加、事務(wù)參與方變多性能損耗會(huì)非常明顯線上很容易出現(xiàn)“鎖等待超時(shí)”和“連接吃緊”的問題。5.3 數(shù)據(jù)傾斜哈希取模也不代表絕對(duì)均勻很多人以為用了哈希取模就萬事大吉其實(shí)哈希只是一種概率均勻。當(dāng)分片鍵的取值空間本身就傾斜時(shí)比如某個(gè)大客戶的訂單量占據(jù)全站 30%那它的所有數(shù)據(jù)都會(huì)被路由到固定的幾個(gè)分片形成“熱點(diǎn)分片”。這個(gè)熱點(diǎn)分片的磁盤 IO 和查詢壓力遠(yuǎn)超其他分片數(shù)據(jù)庫整體就變成了“木桶效應(yīng)”。我處理過的最典型的案例一個(gè) toB 系統(tǒng)按merchant_id分片某頭部商戶的訂單量是普通商戶的上百倍負(fù)責(zé)它的那張表被拖垮直接影響全站。后來采用的方案是“分片鍵 業(yè)務(wù)后綴”對(duì)超大商戶在分片鍵后面拼接一個(gè) 0 到 15 的隨機(jī)后綴讓同一個(gè)商戶的數(shù)據(jù)也能打散到多張表。查詢時(shí)帶后綴批量并行查再合并結(jié)果。代價(jià)是代碼復(fù)雜度上去了但能有效救活熱點(diǎn)分片。5.4 擴(kuò)容遷移數(shù)字上的“擴(kuò)容”遠(yuǎn)比想象中麻煩最后聊一個(gè)所有分庫分表系統(tǒng)遲早要面對(duì)的擴(kuò)容。哈希取模分 16 片用了三年數(shù)據(jù)量漲了要擴(kuò)到 32 片。這時(shí)候的問題不是“加幾張表”這么簡(jiǎn)單而是存量數(shù)據(jù)的大量路由結(jié)果會(huì)變必須在擴(kuò)容方案里做數(shù)據(jù)遷移。平滑擴(kuò)容最基礎(chǔ)的方法是“停機(jī)擴(kuò)容”把服務(wù)暫停跑數(shù)據(jù)遷移驗(yàn)證后再啟動(dòng)。業(yè)務(wù)允許停機(jī)的話這是最簡(jiǎn)單、最可控的方式。不可停機(jī)的系統(tǒng)可以用“新舊雙路由”方案應(yīng)用層同時(shí)維護(hù)新舊兩套路由規(guī)則寫數(shù)據(jù)時(shí)雙寫查到舊分片的數(shù)據(jù)時(shí)從新分片重建并遷移。等數(shù)據(jù)追平切到新路由下線舊路由。整個(gè)過程非??简?yàn)團(tuán)隊(duì)的運(yùn)維能力所以再次強(qiáng)調(diào)分片數(shù)規(guī)劃一定要留足余量別一開始就規(guī)劃得剛剛好。寫在最后的一些真實(shí)體會(huì)分庫分表這個(gè)方案真的是“拆之前百般猶豫拆之后百般謹(jǐn)慎”。我自己的感覺是技術(shù)上最難的往往不是選型或者寫路由代碼而是業(yè)務(wù)查詢維度的梳理和遷移過程中的耐心。很多團(tuán)隊(duì)倒在了遷移的半路上不是因?yàn)榧夹g(shù)不行而是因?yàn)闆]有做好充分的灰度驗(yàn)證和數(shù)據(jù)對(duì)賬就急于放量。如果這篇文章只能給你留下一個(gè)記憶點(diǎn)我希望是這句話分片鍵選型是分庫分表里唯一一個(gè)“一開始錯(cuò)后面全盤錯(cuò)”的決策點(diǎn)規(guī)劃時(shí)間至少要占到整個(gè)項(xiàng)目的一半。再實(shí)際的建議是團(tuán)隊(duì)在真正動(dòng)手之前先用模擬數(shù)據(jù)把路由規(guī)則、擴(kuò)容方案、遷移演練都跑一遍把可能踩的坑盡可能提前暴露在測(cè)試環(huán)境。最后補(bǔ)一句分庫分表從來不是數(shù)據(jù)庫問題的終點(diǎn)。真正穩(wěn)定的大規(guī)模系統(tǒng)往往是分庫分表、緩存、歸檔、異構(gòu)查詢、消息隊(duì)列共同協(xié)作的結(jié)果單一手段解決不了所有問題。你們團(tuán)隊(duì)現(xiàn)在遇到的大表難題屬于哪一類歡迎帶具體場(chǎng)景來評(píng)論區(qū)聊我會(huì)挑典型的出來拆解分析。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
欧美视频激情久久久久久| 91老女人| 曰韩操B| 性欧美精| 天美一二三在线观看Av| 东京热男人的天堂网| 国产亚洲精品美女久久久| 少妇熟女一区二区三区| 91色射| 久久精品国产99国产精品亚洲| 中日高清无码操逼视频| 精品午夜福利国产一区二区在线观看 | 狠狠色丁香| 熟女激情综合网| 亚洲国产97| 亚洲亚洲亚洲天堂天堂 | 91美女高潮| 日韩精品人妻系列无码天堂| 人妻少妇精品一区二区三区| 五月天玖玖资源站| 国产日韩欧美中文在线播放| 性色亚洲| 被操高清无码视频| 亚瑟国产精品久久无码| 国产亚洲色停停久久99精品91| 99re在线视频这里只有精品| 日本黄色精品| 久久久久久九九九九九| 亚洲无码一区成人免费午夜| 三四中文字幕| 国产黄色剧情影片麻豆免费播放| 黑丝自慰喷水网站| 国产精品亚洲高清在线| 最新三级网址| 亚洲人妻中文高清| 九九热最新| 情侣开房子拍 日韩无码 女的很漂亮| 操九九九九九九| 蜜臀久久99精品久久综合| 色97| 97超碰免费人人性爱| 欧美日韩222| 观看免费区二区三区二| 欧美日韩精品国产91| 欧美精品91| 欧美在线啊啊啊| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 干b网| 麻豆成人影音在线| 国产在线观看一区二区三区| 综合伊人网12色| 久久成人国产| 欧美很很操视频| 久久香蕉影院| 天天综合有色网| 一牛影视成人片免费| 日本熟女免费視颖| 人人透人人操| 青青国产精品在线| 超碰97最新人妻| 综合天天网| 人乳av| 中文字幕蜜乳av| 人人看欧美性爱| 嫩草影院在线观看精品| 99热官网| 精品人妻一区春色| 操逼www.| 韩日精品四区| 久久久久久裸体| 91亚洲黄色网| 18禁免费视频| 青青草视频在线观看一区二区| 又摸又舔在线观看网站| 国产97亚洲| 麻豆国产97在线| 国产精品久久久久久照片| 自拍大香蕉乱插| 天天综合,91综合永久| 精品国产网站| 成人性交免费视频| 亚欧性爱ab| 伊人97色天使| 欧洲精品二区| 日韩久久.一级黄色片| 99热超碰在线| 婷婷丁香九月| 一区二区三区 丝袜 高跟 美腿| 超碰97最新人妻| 天天色综合影视网| 色婷视频| 五月开心久久AV官网| 亚洲综合91| 亚洲操人| 97精品久久久久中文字幕| 免费试看60秒| 激情五月天视频| 青青草国产盗摄一二三区| 91N综合网| 伊人一区二区在线播放| 日韩97超碰中文字幕| 久久女同性恋一二区| 欧美超碰在线| 久久99国产综合精品女同| 很狠操| 在线A日本| 亚洲人在线| 97综合国产| 新版天堂中文资源8在线| 久久久久一本一区二区青青蜜月| 91社区伊人| 亚洲天堂,男人| 久久精品国产97欧美精品亚洲 | 91色久| 狠狠爱夜夜干| 激情干在线| 97爱b| 亚洲成人精品在线一区| 乱老熟女一区二区三区| 热无码中文亚洲H一道本一区二区| 中文字幕老熟妇黄色视频| 四虎免费视频| av一区二区三区 中文| 久久久内射良家| 亚洲一级性爱视频免费看| 久久蜜桃综合网| 免费AV中文网在线观看| 一级一性爱免费视频| 亚洲色色色| 久久久青青草| 麻豆60秒| 日本一级婬片试看三分钟| 白丝少妇一区二区| 思思热在线cao| 99最新日韩偷拍视频| 精品亚洲国产成人AV制服丝袜| 另类av综合久久| 多毛小伙内射老太婆| 日本不卡免费二区| 欧美综合自拍成人自拍第二十页| 日韩在线欧美精品一区二区| 亚洲资源网| 最新国产亚洲精品精品国产亚洲综合| a'v在线资源| 久久亚州高清| 色丁香五月婷婷| 国产激情视频一区区三区| 九久久九精品视频| 美國A片| 日韩一卡二卡三卡| 久久久中文版| 日本三级韩三级99久久| 精品久久无码午夜福利| 成人区人妻精品一| 国产av热热色| 91蜜桃婷婷狠狠久久综合9色| 白丝一区| 久久一区二区加油站| 九九久久精品| 在线色导航| 亚洲Av无码成人精品国产| 人妻熟女一区二区在线视频| 日本三级小说中文字幕| 92午夜免费福利视频| 亚洲女人91| 校园春色中文字幕AV| 久久99久久99精品免视看婷婷| 午夜操一操| 97爱碰| 超碰资源亚洲97| 3d成人精品一区二区| 久久超碰com| 99热导航| 国产久久一区二区午夜| 丰满人妻一区二区三区大胸懂色| 精品国产av一区二区三区四区入口| 黑人与人妻| 性欧美另类高清| 操逼视频亚洲| 性饥渴少妇av无码毛片| 91亚洲色图| 久久精品人妻一区二区三区| 天美传媒AV国产在线| 青青草原人妻| AV九九| 日韩国产在线观看av| 黄片视频观看| 欧美人妻少妇| 亚洲黄色AV电影| 久久熟女嫩草成人片免费| 一区 欧美 日韩 麻豆| 丝袜美腿欧美| 日韩有码一区三区| 另类视频在线| www.五月天| 日本在线视频导航| 国产精品制服丝袜清纯唯美| 亚洲国产精品无码AV在线| 国产精品久久妻无码网站| 亚洲狠| 疯操AV| 97久久国产精品| 青青草乱入乱欲视频在线观看| 九九玖玖精品| 伊人色综合超碰| 禁片 高清 在线观看视频网站| 日本综合久久| 欧洲色| 国产11页| 69超碰综合| 亚洲 欧美 中文 日韩超碰| 99这里有精品| 国产精品天美传媒| 亚洲熟女综合| 好爽免费视频,| 春色综合免费| 四虎精品永久在线观看| 嫩草美女久久| 亚洲精品aa久久伊人| 99久久久久久久久| 丝袜美腿诱惑亚洲欧美视频在线观看 | www.久久制服糖| 国产高清吃奶免费视频网站| 丁香六月东京热| 亚洲 国产 精品一区| 欧美色性爱| 国产福利影视| 久久超碰久| 国产乱码久久| ...日韩成人一区二区三区字幕| 曰本91情色| 另类专区加勒比| 欧美亚州综合网图片| 亚洲日韩国产精品| 午夜AV人气不卡| 秋霞曰韩R级| 99日精品欧美国产| 日本韩国一本产品小视频日本韩国一本产品久久久产品小视频日本韩国一本产品久 | 蜜汁欧美| 蜜乳av一区二区| 操逼逼福利视频| 五月天激情网站| 91人妻视频| 亚洲偷91色| 精品九九九九九九| 欧美色性爱| 中文高清一区二区的| 男生女生啊啊啊啊| 久久老女人| 国产第25页在线观看| 九九在线视频| 亚洲少妇免费视频\| 麻豆精品.欧美精品.日韩精品.| 人人操,人人插| 激情久久久| 久热精品色情| 2023天天操夜夜操| 91粉芽高清在线一区二区| 精品小视频在线| 欧美色性情| 欧美黄色片在线播放| 欧美久热| 亚洲交换| 亚洲色 国产 欧美 日韩| 999久久久久久久精| 91熟女.com| 亚洲无 码A片在线观看麻豆| 亚洲激情在线一区二区| s片在线观看| 欧美色图天堂在线| 久久超碰av在线| 亚洲AV成人精品网站在AV| 五月婷在线| …中文字幕亚洲乱,97人妻无码费视…| 色在线视频导航| 99热| 97亚洲在线| 日本午夜福利影院| 欧亚韩国999| 国产欧美成人第一页在线观看| 热久久精品| 96超碰网| 97电影院超碰| 超碰久久.com| 啪啪啪大香蕉| 鸥美中出| 亚洲精品丝袜-不卡成人免费……| 天天搞欧美| 国产精品宅男免费| 2020天天色综合| 亚洲强奸乱伦影视网| 99色日| 操逼天美3区| 佐山爱中文字幕| 美女天天干| 女一区二区| 国产精品一区二区亚洲人成毛片| 中文字幕视频一区视频二区| av亚欧| 九九九九88| 国产成人亚洲精品无| 日韩欧美亚洲国产日韩| 成人毛片免费| 有码色中文字幕在线观看| 日韩高清黄片| 久久成人东京热人妻| 9久9久| 色情综合网| 熟妇人妻丰满久久久久久久无码| 国产不卡精品91| www.99色| 日本不卡免费二区| 口爆综合网| 操b在线观看| 91性| 99无码视频| 亚洲无码 国产无码| 青青草色情网站视频| 青椒国产97在线熟女| 久草久日| 啊啊啊不要好疼视频| 囯戸精品高潮呻吟旡码| 91熟女少妇| 久久五月视频| 尤物视频一区| 亚洲色阁| 97超碰精品成| 色噜噜综合在线| 2020中文在线一区二区三区| 大逼色网站| 人妻出轨一区二区三区| 操逼视频免费日韩无码| 韩国三级一线观看久| 久久久久久久久久久久久久久久9| 国产又粗又长又爽又色| 日本一区二区三区午夜观看| 少妇精品| 成人久久久精品| 在线观看一卡二卡| 国产麻豆福利av在线播放| 人妻精品一区二区| daxiangjiao你懂的| 激情五月综合网| 精品久久久久久无码| 亚洲色天堂九9| 亚洲情色一区综合| 激情欧美97| 欧美 精品国产制服第一页| 丁香九月婷婷| 蜜桃视频啊啊啊啊| 一区二区三区四区五区高清无码永久视频 | 久久久久久九九九九-美女久久久久久久-成人AV | 久久99亚洲精品久久99果| 久久久九九九| 91欧美色| 人澡逼| 日日骚 av| 日韩免费人妻色情网站| 久操热| 盗摄女人妻在线| 91视频伊人| 97超碰欧美中文字幕| yazhouzaixian| 白丝AV网站| 成人五月香网在线| 乱精品一区字幕二区| 3p国产欧美99热| 很黄很色的视频在线观看| 人妻一区二区三区四区视频| 中文字幕视频二区| 一区二区播放| 精品一区二区三区18| AV色五月| 骚妻少妇精品性色无码四色A V| 夜夜狠狠躁日日躁色视频| 91 在线亚洲| 伊人网av| 国产成人资源| 在现视频女上位好爽| 国产成人无码久久精品| 亚洲国产日韩欧美熟妇在线| 亚洲熟女中文字幕在线| 91精品久久综合熟女| 久久亚洲精品成人av| 伊人久久在线视频观看| 色伊人91| 性爱精品一区| 日本有码久久| 91人妻视频| 99久久亚洲精品无码毛片潘甜甜| 日本欧美中文字幕| 日韩无码操逼片| 中文字幕,人妻,日韩| 国产av激情无码久久天堂| 日韩熟女操逼| 八人操人人摸人人看| 国产AV久久野战精品| 日本高清_区二区三区| 国产色呦呦| 99热只有这里有精品| 大香蕉人妻| 蜜臀久久99精品久久综合| 日韩在线视频1234| 国产成人主播| 伊人欧美大香蕉视频| 丰满人妻一区二区三区免费| 欧美日韩大香蕉| 精品国产无码中文| 欧美v亚洲v日韩v最新在线二区| 黄污污污污| 亚州精品丝袜-不卡成人免费| 91性生活久久久| 亚洲精品97中文字幕| 中文字幕一区二区无码成人| 国产精品分类在线观看| 免费啪啪一级视频| 大香蕉97久久| 国产和美国毛片| 欧亚日韩中文在线| 亚洲精品性爱片| 亚洲黄色影视| 久久超碰98| 亚洲欧洲日韩中文字幕一区| 国产精品露脸在线观看| 亚洲精品视频在线播放| 91偷拍欧美亚洲| 亚洲第一黄色av网站| 午夜福利成人免费视频| 成人色女网| 日韩天天综合| 免费伦费视频在线观看| 伊人大香蕉在线| 99精品综合久久久久五月天| 大香蕉乱级| 99热18| 久久伦理视频久久大香蕉视频| 亚洲综合网91| 久久久97| 一摸二插三插| 密乳无码| 欧美视频激情久久久久久| 婷婷激情四射| 91九色网| 欧美性夜| 综合激情五月天| 9长久久精品| 成·人免费午夜在线观看| 亚洲国产成人高清在线| 东方亚洲在线操逼天堂| 极品欧美一区二区三区| 91爽啪| 亚洲,欧美,综合网| 亚洲国产一级精品毛一级精品看免费视频| 亚洲综合影视| 香蕉黄色一级视频| 黑人中出21连凳花野真衣| 伊人操| 成功精品影院| 91熟女丨老女人| 日本人妻A片成人免费看片| 91国产伊人大香蕉| 欧亚免费视频| 96国产精品| 操婷婷逼| 色五月av| 欧美综合网A| 五月天激情综合网| 久夜视频| 日韩美女久久一区二区三区| 2024年最新色情网站在线观看| 东京日日夜夜| 国产强奸乱伦第1页| 亚洲天堂区| 天久久久噜噜噜久久国产精品爽爽| 成人精品在线| 国产老太乱伦一区| 国产天天看| 久久亚洲欧美中文字幕国语| 欧洲精品网| 国产综合网站在线播放| 日日AAvv| 欧美在线官网| 人人贴人人摸| 天天在线91| 亚洲中文字幕97久久精品少妇| 人人妻人人澡人人爽久久av| 国产白领连续中出在线观看| 国产色综合亚洲色综合吹潮| 60秒免费视频| 五月激情综合网| 不卡av免费在线网址| 大奶尤物鲍汁淫荡欧美视频粉嫩夜夜骚| 999精品国产高清一区二区| 日韩中文字幕宗合在线| 日本福利社| 香蕉欧美| 欧美亚洲清纯| 花野真衣| 自拍偷拍 高清无码| 97中文综合| 精品无码久久久| 夜夜操青青草| 亚洲色阁| 日韩精品9区| a久久| 啊啊啊啊啊好大好舒服想要| 手机看片1025| 国产亚洲福利第一页丝袜| 中文久久96| 久久精品欧美一区蜜桃| 日本狂喷奶水在线播放212| 四虎精品亚洲| 国产精品 午夜福利| 国产精品免费视频人成| 日韩一级性爱无码| 国产精品禁久久久精品| 少妇69中文| 日韩午夜啪啪视频| 亚洲精品性爱片| 少妇淫妇久久久久久久| 国产性爱欧美性爱在线| 性欧美另类高清| 3028国产精品| 人妻二区| 国产精品九九九| 后入式999| 美国久久一二三四| 麻豆视频test| 成人婷婷丁香| 强奸xx国产| 26uuu国产日韩综合在线观看| 偷拍 亚洲 欧美| 人人操人人精品影片| 亚洲熟女乱熟乱熟妇综合网二区| 狼天天狼天天大香蕉| 欧美日韩国内不卡| 无码最新| 人人摸.人人色| 91天天| 人人操人人肉久久精品| 亚洲天堂一二| 天天爽入口| 国产欧洲精品亚洲午夜拍精品| 麻豆黄四叶草网站| wwe 天天干.com| 日韩成人色图| 好爽视频在线观看视频| 日韩天天综合| 亚洲深夜福利| 青青草好吊色| 91这里只有精品| 亚洲欧美色图片| 99re在线| 懂色av一区二区三区天美传媒| 91精品导航| 亚洲色图A| 97视频免费播放| 老女人综合| 亚洲熟女av中文字幕| 极品色综合| 91宗合网| 国产偷人伦激情在线观看| 91久久| 一级做a爰片性色毛片久久| 一中国女人毛片水真多| 欧美亚洲国产91在线| 免费视频在线一区二区不卡| 日韩99精品视频综合区| 天天操天天射天天日| 色色香蕉| 色五月婷婷中文字幕| 91狠狠色丁香婷婷综合久久| 搡老女人老妇女老妇老熟女怎么读| 91在线美女| 四虎884a| 国产精品白丝AV| 97亚洲在线| 波多野结衣AV无码一区| 91成人久久| 色播丁香| 国内操逼视频二区| 97在线日韩中文字幕| 午夜男人的天堂| 男女啪啪啪18禁网站| 青娱乐欧美激情一区二区| 久久99午夜精品一区人妻| 色婷婷香蕉| 九九精品美女高溯喷水| 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | 九九九九9999| 日本性爱欧美性爱| 亚洲成人免费电影| 国产白嫩精品久久| 日韩毛片9| 蜜臀99久久精品久久久懂爱| 岛国片国产成人亚洲播放| www99热| 亚洲免费日韩在线一区二区| 中文字幕第7页| 亚欧高清| 欧美在线干| 色大师网站www永久网站视频| 33044男人的天堂深夜备| 伊人影院日本| 亚洲精品亚洲人成人网| 好屌色综合| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区 | 国产热av| 日本成人免费一区二区三区 | 欧美激情 亚洲色图| 欧美高清18A片| 探花精品视频| 久草精品一区| 视频一区二区三区精品| 开心五月婷婷| 91日日夜夜| 免费av高清无码| 亚洲一区深夜| 亚洲猛交| 欧美久久伊人| 粉嫩小泬久久久一区二区| 免费观看一区| 99在线观看| 后入式999| 性影在线视频| 九九九久久久久| 日本九九久久99播| 91亚洲影视| 日本综合久久| 超碰欧美COM| 欧美视频一区二区在线| 国产精品第二页| 一级AV性爱| 中文字幕一区二区三区蜜臀| 国产精品96久久久久久| 九九在线精品| 久久久啊啊啊| 91欧美| 久久久亚洲精品中文字幕人妻| 91操人| 欧美偷偷网| 无码av永久免费专区网站| 伦在线97| 人人摸人人添人人操| 日日日骚女人精品| 国产女人和拘做爰视频 | 91国产丝袜美女| 日韩 欧美 视频 在线 一区| av东京热男人的天堂| 国产人妖的免费的视频| 麻豆国产第一| 蜜乳性色无码专日粉嫩骚逼AV| 国产精品一区二区后入| 欧美一区二区观看在线| 激情婷婷丁香网| 桃花色涩综合影院| 男人的天堂va在线| 操穴国产| 18啪啪手机免费性爱| 美美91成人国产精品欧美精品久久久久久久 | 国产精品香蕉热久久新品| 亚洲。天堂。日本在线观看| 天天干天天狼在线视频| 久草看看看| 日本高清电影欧美色图| 人人么人人操| 青青草字幕AV| 免费黄色片子| 亚洲啪啪综合?v一区综合精品区| 国产极品粉嫩馒头一线天av| 白丝少妇一区二区| 免费的黄片wwwwww| 少妇高潮九九九九| 91艹逼精品| 亚洲中文字母在线播放| 91青青草| 男人天堂综合| av九九| 性饥渴少妇av无码毛片| 97伦乱| 超碰97起碰| 色色色色日本| 91丝袜在线播放| 啊啊啊不要好爽日韩无码一区| 日韩av影片在线观看| 91精品91久久久久77777俄罗斯老妇姓x| 粉嫩国产精品久久久| 国产精品探花在线| 黄色视频高清无码网站| 九99久久| 91新在线欧美| 99色视频| 另类小色呦| 欧美视频一| 亚洲色图8| 大香蕉色网| 婷婷色色五月| 91快色色色色色| 99久久99久久免费精品蜜臀| 久久久久久裸体| 第二页中文字幕| 国产成人网| 国产宅男宅女在线观看| 97爱爱爱| 一本色道人妻久久| 学生妹天天看| 久偷拍| 操狠狠| 午夜天堂啪啪| 操逼逼中文字幕| 日韩一级欧美一级国产一级台湾| 亚洲双插| 91美女視頻| 久久久久久九九九九-美女久久久久久久-成人AV| 中文字幕 国产 精品| 神马久久久久久伦理片| 黑人免费福利视频| 舔足天天操天天射| 蜜区区视频79| 人妻无码一区二区三区久久99| 日韩国产十八禁| 91蜜臀在线久久久久| 丁香五月色情| 免费A V在线| 五月天玖玖资源站| 亚洲av影音先锋| 亚洲日本激情| 日韩操逼性鲍| 久久久精品91八戒| 日韩熟女操逼| 男女猛烈无遮掩视频免费软件| 久久男人的天堂| 欧美日韩资源| 97国产超碰| 久 久无码人妻AV| 伊人超碰97| 先锋女优在线观看视频| 99热伊人| 99re这里只有精品9| 资源新线在线天堂| 亚洲精品九九九| 亚洲丝袜综合| 日韩一级欧美一级国产一级台湾| 亚洲性网| 久操操AV电影| 琪琪精品免费一区二区三区| 亚洲国产精品有声| 欧美人妻久久精品二区三区| 福利在线观看一区二区| www成人啪啪18秘 免费| 你懂得91| 狠狠中文字幕| 操香逼| 成人精品欧洲亚洲| 国产97在线播放| 国产成人五月天丁香花| 日少妇视频| 极品欧美一区二区三区| 国产精品无码久久久久2028| 看日韩操逼| 91色久| 中日无幕一二三四区| 青春草A| 久久精品成人一区二区三区蜜臀| 亚洲成人AB| 超碰91在线| 中文精品一区二去| 婷婷丁香成人| 伊人97色天使| 亚洲好色人妻| 偷拍精品一区二区三区| 中文字幕中文字幕一区二区| 大香蕉久操| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 操人妻丝袜高跟| 欧洲精品人妻| 黄页av| 岛国毛片手机在线观看| 五月综合视频| 色色色色色色色色综合| 九久9精品| 精品人妻中文字幕4399| 久久综合五月天| 91成人国产综合久久精品蜜月| 人妻喷水| 先锋影音av先锋一区| 日本肏逼视频在线观看| 熟妇视频一区二区三区在线观看| 蜜臀th| 亚欧免费观看视频| 亚洲AV成人无码一区二区三区在线观看| 99丝袜福利在线播放| 五月天欧美色图| 欧美精品精品一区二区| 人人操人人狠狠操| 久久久久久久国产| 78久久| 91|九色|国产熟女| 国产乱人妻精品入口| 超碰在线一区二区| 岛国片在线观看视频亚洲| 国产亚洲欧洲在线观看| 俞拍久久国应视频| 小情侣高清国产在线视频| 9 7超碰在线免费观看| 日本不卡一二区| 亚洲天堂无码| 精品999日本| 青娱乐国产剧情av一区| 99热这里只有精品9| 欧美在线 亚洲| 婷婷在线视频在线观看| 久久亚洲不卡| 久午视频| 九月丁香婷婷| 亚洲熟女乱综合一区二区在线-...亚洲国产日韩欧美一区二区三区,久久久久久精 | 999九九精品| 国产精品分类在线观看| 狠狠躁AV| 亚洲日韩国产精品| 伊人久久88国产女| 亚洲图片 欧美电影| 夜夜影视四色| 欧美色图在线视频少妇| 天天操天天干一区二区| 夜夜狠狠躁日日躁色视频| 欧美性爽xyxOOOO| 日本韩国一本产品小视频日本韩国一本产品久久久产品小视频日本韩国一本产品久 | 亚洲性少妇| 午夜一区二区三区国产| 欧美人妻中出| 色色香蕉| 91美女高潮| 国产亚洲国产超碰| 清纯唯美综合亚洲| 九九香蕉网| 青青青在线高清视频在线一二三四区| 欧美 亚洲 偷拍自拍| 97超碰影音| 婷婷导航| 亚洲在线欧美| 欧美一区二区情色| 天天懆天天日| 免费99精品国产自在在线| 黄色性爱网网| 亚洲一区二区中文字幕| 色色99| 乱伦强奸区日韩| 日本一区99| 18禁网站在线播放| 久久久女人| 天天肏美女| 无码 黑人一区二区三区| 嗯嗯啊好大| 天天精品| 久久日本熟妇熟色一区| 一区二区精品更新提醒| 99精品视频在线观看免费| julia ann久久| 超碰在线99| 激情黄色片在线观看| 吉川爱美亚洲二区在线| 欧美精品自慰系列寂寞少妇| 精品无码少妇| 丝袜性亚洲| 亚洲成人一区二区精品| 香蕉精品二区二区| 99re3这里只有精品| 青娱乐亚洲自拍| 日韩无码第3页| 日欧美色| 亚洲成av人片色午夜乱码| 97视频在线看| 91精品久久久久久久久久| 久青草影院| 精品无码久久久久久国产浪潮| 国内外毛片在线观看| 综合日本女人伊人| 噜噜噜在线视频| 久久久久久久久久9| 丝袜视频一区二区在线播放国产中文 | 开心五月天激情网| 国产精品麻豆成人av| 蜜桃午夜视频一区二区 | 91天堂丝袜美腿| 久久精品人体| 逼逼逼逼操操操操操操操操操午夜剧场 | 韩日自拍| 91黑丝少妇| 90后性网国产欧美| 一区二区免费电影久久| 91N综合网| 色麻豆AV| 久久色激情一区二区三区| 男男H黄动漫啪啪无遮挡网站| 富女玩鸭子一级毛片| 四虎免费在线播放| 亚州色图欧美| 人妻天天爽夜夜爽爽| 久久性爱免费送| 又粗又长又爽在线观看| 精品九九九九九| 一二三四区电影| 91久久久老司机| 操我啊啊啊啊啊| 亚洲欧美精品一区天堂久久 | 亚洲高清少妇| 欧美永久激情一区二区| 口爆综合网| 蜜乳av首页| 国产乱人伦AVA麻豆软件.| 中国熟女老妇仑乱一区二区三区| 91 天天综合| 偷拍亚洲视频一区二区三区四区| 黑人与人妻| 国产AV天美| 亚洲熟女乱色| 激情四射婷婷四五月天| 99热在线播放| 五月天丁香网| 久久艹逼视频| 国产伦精品一区二区三区在线观 | 狠狠爱夜夜干| 91丨精品丨国产丨丝袜| 亚洲AV无码久久精品蜜桃小说| 懂色AV一区二区三区| 五月丁香影院| 三级三级三级日本99| 啪啪啪大香蕉| 狠狠操狠狠插| 日本在线一二| 日韩精品一区二区三区四虎影视| 婷婷亚洲天堂| 91碰碰| 五月激情天| 99热在线观看| 国产久久一区二区午夜| 操狠狠| 日韩97视频!在线| 手机不卡视频不卡在线一二三区| 欧插网站| 超碰激情808| 大香蕉色网| 夜草欧美| 青青草国产一区二区三区| 另类老少妇| 97视频在线观看免费高清| 91bbbbbb| 亚洲视频中文一区| 日本人妻中文字幕 | 丝袜喷水在线| 亚州久久9| 色女免费在线观看视频网址| 91无摭挡| 男女啊啊啊| 国产福利一区二| 小视频玖玖| 亚洲精品日日夜夜52| 婷婷五月天_亚洲小说欧美激情另类_精品久久国产字幕 | www…国产操逼| 成人情色一区二区| 日韩精品人妻中文字幕有码午| 天天看人人操屄犊摸阴| 风月影院男女十八禁| av2014 日韩在线中文字幕| 97久久国产精品女不卡| 超碰97人人cao| 精品性爱一二三区| 黑操B| 精品国产乱码久久久兰草影视| 快播久久人人aV| 国内偷拍精品一区二区| 国产女人极品高潮毛片| 大香蕉九九| 天天碰操中国年青熟妇| 综合网亚洲1| 亚洲精品久久久久毛片A片拉屎 | 色播丁香| 激情亚洲天堂| 东京热,男人的天堂| 香蕉国产精品麻豆亚洲欧美日韩| 亚洲最新中文字幕免费| 人妻加勒比东京热| 97丝袜亚洲在线播放| 欧美黄业| 操逼不卡中文字幕| 精品久久久久,69国产成人精| 久久久111| 东京热大香蕉| 强奸乱伦日韩AV| 中文字幕视频在线观看一区二区| 91N综合网在线| 亚洲不卡三级手机播放| 日韩成人大片一区二区| 国产农村妇女精品一| 国产蜜臀精品一区二区尤物| 国产精品露脸在线观看| 五月激情在线| 国外91| 人人操 欧美| 五月综合色| 啊啊啊啊,啊啊好多水| 久久久国产av美女私房| 日韩高潮一区| 久草成人影片| 欧美精品一区二区少妇免费A片| 婷婷五月天补不补| 精品高清牛人盗摄一区二区三区中文字幕A片免费在线观看 | 超碰538| 日韩性爱啪啪视频| 尹人大香蕉视频在线| 国产九九九九九九| 国产日韩区| 亚洲宗合电影| 热99这里有精品综合久久 | 国产绿奴视频在线观看| 久久秀这里有精品| 青草地一本线一区二区三区| 国产精品一二三在线看| 一区二区三区 丝袜高跟| 色综合一区二区三区| 五月丁香色综合| 欧美日韩小说| 国产97色在线| 欧美色老汉| 91人妻Pr| 久久久精品,3| AV电影在线播放| 91日韩网站| 九九黄色视频在线观看| 男人天堂久久精品不卡| 永久免费发布性爱网| 国产精品久久久999| 午夜.DJ高清在线观看免费7| 成人日韩中文字幕| 日韩三级在线观看网站| 久久亚州高清| 一二三四视频中文字幕在线看| 人人污日韩一区二区| 级做a爱无码性色永久免费| 色 婷97| 国产精品探花色| 97超碰巨乳| 国内毛片婷婷六月色| 欧美最大综合网| 国模少妇一区二区三区| 激情文学亚洲| 婷婷五月天色| 91亚洲色图| 免费人人搞97| 18禁网站在线播放| 人人澡人人澡人人| 香蕉综合网| 蜜臀视频网站| 日本一二三高清| 多毛小伙内射老太婆| 69av一区二区三区| 免费看污网址| 国产一级做a爰大片免费久久| 久肏视频字幕| 98一区二区精品| 天天看精品动漫视频一区| 人妻人人澡人人爽人人| 人摸人人操人| 精品少妇99| 按摩中文字幕| 久久九九视频九九视频| 日韩电影中文字幕| 午夜男人天堂| 日本欧美一区二区三区免费| 肉丝中文无码高清| 亚州精人品大香蕉| 欧美一区二区三区四区综合| 亚洲清纯唯美| 精品国产乱码久久久久久久久1| 久久日韩精品一区二区| 蜜桃狠狠色伊人亚洲综合| 婷婷综合| 国产又黄又爽又刺激久久久久久| 96精品一区| 久久久久久久极品香蕉视频| 超碰色男人操熟女| 午夜啊啊| 欧美亚洲美少妇一区二区| 操操碰| 美国精品国产精品| 天堂成人网| 91超碰碰在线| 99热色这里只有精品| 亚洲色 国产 欧美 日韩| 欧美色院| 超碰这里有精品| 亚洲精品一二三四区| 国产精品久久久久久久久AV大片 | 久久免费中文字幕在线观看| 91社区拍啪人妻| 91香蕉国产尤物视频| 欧美色图97| 九九九九日本| av天天在线观看| 无码国产精品久久久久| 亚洲97成人在线观看| 蜜臀AV一区二区三区| 很很很很操| 91暧暧| 午夜人妻精品综合在线| 久久精品店| 日韩激情毛片一级久久久| 亚洲欧美另类图片| 欧美日韩系列| 99色骚| 欧美一二三区四五区| 91在线色综合| 亚洲欧美成人在线| 欧美日韩香蕉| 高潮毛片无遮挡高清免费| 亚州91| 欧美亚洲首页| 天天操天天干美女网址导航| 欧美日动态视频| 精品人妻一区二区免费蜜桃| 91亚洲人电影| 久久久久人妻| 日本中文字幕在线电影| 丁香六月东京热| 国产精品久久久久亚洲av| 极品粉嫩一区二区| 日日狠狠久久偷偷色综合免费| 超碰人人超在线观看| AV污污污污| 97人人操人人摸| 国模不卡| 中文字幕一区二区韩| 色就色综合| 日韩国产不卡在线视频| 熟女这里只有精品6| 久久 国产 无码| 97精品一区二区视频| 亚洲欧美另类激情小说| 超碰免费97| 亚洲福利影院一区久久| 男人的天堂网页| 日韩少妇无码| 日本久久女同性恋视频| 天天操夜夜操| 美女裸体无遮挡永久免费观看网站 | 久久东京国产精品视频| 好舒服视频| 91日产欧美| 色男人色天堂东京热| 操淫穴亚洲五月丁香 | 中文字幕艹艹| 日韩AV色图| 精品一久久久| 日韩色女精品| 亚洲激情深爱文学小说网站| 国产丁香精品露脸视频| 亚洲无码日韩电影| 九九无码| 日韩综合无码色欲vv|