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

ARTICLE DETAIL

資訊詳情

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

Kafka面試八股文:從高吞吐原理到可靠性機(jī)制與積壓排查

Kafka面試八股文:從高吞吐原理到可靠性機(jī)制與積壓排查 去年面了個(gè)候選人提到Kafka為什么快對方張口就是“分區(qū)、順序?qū)?、零拷貝”我順著追問了一句“零拷貝具體省了哪幾步拷貝”他愣了幾秒然后告訴我“就是省了拷貝”。這種回答其實(shí)挺常見的名詞都聽過但再往下一層就空了?!睹嬖嚢斯晌摹废盗袑懙浆F(xiàn)在是第21卷這一期專門聊Kafka。市面上的Kafka面試題匯總一抓一大把但大多數(shù)只是把題目和答案列出來你背完還是會覺得心里沒底。因?yàn)槊嬖嚬僬嬲肼牭膹膩聿皇悄莻€(gè)名詞而是名詞背后的取舍邏輯。這篇文章不打算給你堆題目而是把Kafka面試?yán)镒罡哳l的幾組考點(diǎn)拆開揉碎底層定位、高吞吐原理、可靠性機(jī)制、消費(fèi)者端三大問題、消費(fèi)組與Rebalance、線上積壓排查最后再給一套可以直接上口的表述模板。無論你是準(zhǔn)備面試還是想系統(tǒng)補(bǔ)一下Kafka原理這篇都適用。1. 先把底層定位說清楚Kafka不是“消息隊(duì)列”這么簡單1.1 面試官為什么開口就問“你怎么理解Kafka”面試問“你怎么理解Kafka”其實(shí)是在試探你有沒有自己的知識框架。你要是張嘴就說“Kafka是分布式消息隊(duì)列”不能算錯(cuò)但等于沒說。這個(gè)答案太淺面試官接下來會連著追問它和RabbitMQ有什么區(qū)別它為什么吞吐量高它適合什么場景一個(gè)“消息隊(duì)列”的標(biāo)簽根本撐不住這些追問。我更推薦按三層來理解Kafka第一層是消息系統(tǒng)基于發(fā)布訂閱模型負(fù)責(zé)異步解耦、削峰填谷第二層是存儲系統(tǒng)消息持久化到磁盤保留一段時(shí)間可以回溯消費(fèi)第三層是流處理平臺借助Kafka Streams或者對接Flink做實(shí)時(shí)計(jì)算。面試時(shí)能講到這個(gè)層面面試官至少知道你不是只會背概念。這里面還有一個(gè)比較容易忽略的點(diǎn)Kafka和JMS規(guī)范其實(shí)沒什么關(guān)系它并不遵守JMS那套API標(biāo)準(zhǔn)而是自己定義了一套基于分區(qū)和offset的消費(fèi)模型。很多人拿RabbitMQ那套exchange、queue的邏輯去套Kafka結(jié)果越套越亂。記住一點(diǎn)Kafka的設(shè)計(jì)核心是“分布式日志”不是“消息隊(duì)列”這個(gè)定位直接影響你對后面所有機(jī)制的理解。1.2 從topic、partition到segment一條消息到底存在哪面試官的第二個(gè)追問往往是“消息存到哪里了”。如果你答“存在磁盤上”還不夠他會繼續(xù)問“磁盤上的結(jié)構(gòu)長什么樣”。一條消息從生產(chǎn)到存儲的路徑是這樣的生產(chǎn)者指定topic消息按照分區(qū)策略落入某個(gè)partitionpartition內(nèi)文件按大小切分為多個(gè)segment消息真正寫進(jìn)當(dāng)前活躍segment的.log文件末尾。為了更好地查找消息每個(gè)segment還對應(yīng).index和.timeindex兩個(gè)索引文件。整體結(jié)構(gòu)可以看作一個(gè)“分區(qū)目錄 - segment文件”的樹形布局。這里有個(gè)關(guān)鍵點(diǎn)Kafka不是按topic物理隔離存儲數(shù)據(jù)而是以partition為單位。也就是說一個(gè)topic的多個(gè)分區(qū)是散落在不同broker上的。這是Kafka水平擴(kuò)展的基礎(chǔ)——假設(shè)一個(gè)broker磁盤滿了你加機(jī)器、做分區(qū)遷移就能把壓力分?jǐn)偝鋈ァC嬖嚬倏赡軙穯枴盀槭裁匆蟹謪^(qū)”。我習(xí)慣從兩個(gè)角度答從存儲角度看一個(gè)分區(qū)的數(shù)據(jù)文件如果無限增長后續(xù)清理和查詢都是災(zāi)難segment切分機(jī)制恰好解決了這個(gè)問題從計(jì)算角度看分區(qū)是并行度的基礎(chǔ)多個(gè)分區(qū)可以被多個(gè)消費(fèi)者線程同時(shí)消費(fèi)消費(fèi)者的擴(kuò)展性本質(zhì)上是分區(qū)的擴(kuò)展性。1.3 一個(gè)能背下來也能講出來的“Kafka是什么”標(biāo)準(zhǔn)回答我整理了一套自己面試時(shí)常用的回答口徑你可以參考也可以按自己的語言習(xí)慣改先說定位Kafka是一個(gè)基于發(fā)布訂閱模式的分布式流處理平臺核心能力是消息系統(tǒng)、存儲系統(tǒng)和流處理。再說高吞吐的底層支撐分區(qū)并行、順序?qū)懕P、頁緩存、零拷貝、批量發(fā)送和壓縮。接著說可靠性持久化到磁盤、多副本機(jī)制、ISR列表、ack確認(rèn)、HW高水位。最后說落地場景日志收集、埋點(diǎn)數(shù)據(jù)管道、異步削峰、事件驅(qū)動(dòng)架構(gòu)。這套口徑的好處是“總-分”結(jié)構(gòu)清楚面試官無論從哪個(gè)點(diǎn)深入追問你都有一條線可以順下去。背它是不難的難的是每個(gè)節(jié)點(diǎn)都能展開。后面幾節(jié)就是把這條線上最核心的幾個(gè)節(jié)點(diǎn)一個(gè)個(gè)拆開講透。2. 百萬級并發(fā)的底氣順序?qū)?、零拷貝、批量、頁緩?.1 順序?qū)憺槭裁幢入S機(jī)寫快那么多面試題里最熱門的問法就是“Kafka為什么能支撐百萬并發(fā)”。你要真去答先想明白一個(gè)問題Kafka的高吞吐第一功臣是什么答案是順序?qū)懘疟P。很多人以為Kafka是依賴內(nèi)存才能快起來的實(shí)際上它敢把數(shù)據(jù)全量落盤靠的就是順序IO。普通機(jī)械硬盤順序?qū)懙乃俣却蟾旁?00MB/s以上但隨機(jī)寫由于磁頭頻繁尋道速度可能掉到幾MB/s甚至更低。SSD雖然隨機(jī)寫比HDD快不少但和順序?qū)懴啾纫踩杂胁罹唷afka把每條消息追加到分區(qū)文件的末尾不修改任何歷史數(shù)據(jù)天然就是順序IO這就能讓磁盤吞吐逼近硬件上限。僅靠單分區(qū)順序?qū)戇€不夠每個(gè)topic有多個(gè)分區(qū)一個(gè)broker上多個(gè)分區(qū)的日志文件可以并行追加相當(dāng)于把一條磁盤隊(duì)列變成多條隊(duì)列交替寫入。底層是多分區(qū)的并行疊加整體吞吐自然就上去了。面試時(shí)有個(gè)點(diǎn)值得主動(dòng)補(bǔ)充順序?qū)懖⒉淮怼安宦浔P”Kafka默認(rèn)先把數(shù)據(jù)寫進(jìn)頁緩存再異步刷盤。這和“為保證可靠性每條都fsync”是兩種設(shè)計(jì)思路前者為了吞吐后者為了絕對安全。Kafka的取舍是用副本機(jī)制兜底而不是靠每一條都刷盤。2.2 零拷貝在消費(fèi)鏈路里省了什么零拷貝這道題90%的人只記住了“省拷貝”但你要能說清“省了幾次、在哪省的”才算真正過關(guān)。先看傳統(tǒng)的文件傳輸路徑磁盤數(shù)據(jù)先讀入內(nèi)核空間的頁緩存再從內(nèi)核拷貝到用戶態(tài)程序緩沖區(qū)程序處理后再拷到內(nèi)核Socket緩沖區(qū)最后通過網(wǎng)卡發(fā)出。這一趟下來至少4次拷貝、4次用戶態(tài)與內(nèi)核態(tài)切換。Kafka消費(fèi)消息時(shí)走的是sendfile系統(tǒng)調(diào)用底層對應(yīng)Java NIO里的FileChannel.transferTo()。數(shù)據(jù)路徑變?yōu)榇疟P - 頁緩存 - Socket緩沖區(qū) - 網(wǎng)卡中間省掉了用戶態(tài)那一次拷貝。所以Kafka的零拷貝準(zhǔn)確說是“內(nèi)核態(tài)內(nèi)的DMA拷貝和CPU拷貝配合”比傳統(tǒng)的“內(nèi)核到用戶、用戶到內(nèi)核”至少少兩次拷貝。面試官如果追問“為什么零拷貝能提升吞吐”你可以從兩個(gè)角度看一是CPU利用率顯著上升因?yàn)槭〉袅擞脩魬B(tài)和內(nèi)核態(tài)的反復(fù)切換二是內(nèi)存帶寬壓力變小消費(fèi)者拉取高頻大消息時(shí)差距更明顯。一個(gè)容易被忽略的細(xì)節(jié)是零拷貝要求數(shù)據(jù)在頁緩存里命中才能走通這條路徑。如果數(shù)據(jù)不在頁緩存而必須從磁盤先加載性能就會打折這也是Kafka強(qiáng)調(diào)給OS留足夠內(nèi)存做頁緩存的原因之一。2.3 批量與壓縮性能的倍增器順序?qū)懡鉀Q的是存儲吞吐網(wǎng)絡(luò)開銷則要靠批量和壓縮來解決。生產(chǎn)者默認(rèn)并不是一條消息就發(fā)一次請求而是攢一批再發(fā)。batch.size控制每批消息的最大字節(jié)數(shù)默認(rèn)16KBlinger.ms控制等待時(shí)間默認(rèn)0。如果消息量不夠而一直等不到湊滿一塊linger.ms就是兜底保證消息不會無限積壓在發(fā)送端。為什么批量能提升吞吐本質(zhì)上是把多次網(wǎng)絡(luò)往返合并成一次服務(wù)端也只需要解析一次請求體。對Kafka這種海量小消息的場景網(wǎng)絡(luò)往返次數(shù)往往是瓶頸批量直接砍掉了大量RTT開銷。壓縮就更直接了。Kafka支持gzip、snappy、lz4、zstd幾種壓縮算法壓縮發(fā)生在生產(chǎn)者端數(shù)據(jù)在整條鏈路里保持壓縮狀態(tài)消費(fèi)者端解壓。對于JSON文本這類可壓縮性很高的消息體壓縮率經(jīng)常能達(dá)到60%以上。當(dāng)網(wǎng)卡帶寬成為瓶頸時(shí)開壓縮比加機(jī)器性價(jià)比高得多。面試時(shí)可以提一句自己的經(jīng)驗(yàn)如果消息體已經(jīng)很小比如幾字節(jié)的埋點(diǎn)開壓縮反而會浪費(fèi)CPU因?yàn)閴嚎s頭開銷可能比消息本身還大。壓縮不是無腦開的要看數(shù)據(jù)特征。2.4 頁緩存才是Kafka真正的緩存Kafka沒有像很多中間件那樣用堆內(nèi)存做緩存層而是直接依賴操作系統(tǒng)的Page Cache。生產(chǎn)者寫入時(shí)先寫頁緩存由OS決定什么時(shí)候刷盤消費(fèi)者讀取時(shí)優(yōu)先讀頁緩存命中就直接返回完全不走磁盤。這個(gè)設(shè)計(jì)有它的好處第一進(jìn)程自己不用管理緩存淘汰策略交給OS更省心第二JVM堆內(nèi)存壓力小不容易因?yàn)榫彺鎸?dǎo)致GC問題第三進(jìn)程重啟后頁緩存還在不會像進(jìn)程內(nèi)緩存一樣重啟即失。Kafka在“用內(nèi)存”這個(gè)點(diǎn)上選了一條偷懶但特別聰明的路線。這里其實(shí)藏著一個(gè)面試加分點(diǎn)Kafka節(jié)點(diǎn)的可用內(nèi)存往往不是給JVM堆用的而是留給頁緩存用的。很多人調(diào)優(yōu)時(shí)只盯著堆大小其實(shí)生產(chǎn)環(huán)境里Kafka的堆內(nèi)存一般不需要設(shè)置得太大主機(jī)的大部分內(nèi)存應(yīng)該留給頁緩存。如果你能說出這句話面試官會覺得你是有實(shí)操經(jīng)驗(yàn)的。把幾個(gè)點(diǎn)串起來總結(jié)一下順序?qū)懡鉀Q了磁盤瓶頸零拷貝解決了數(shù)據(jù)發(fā)送瓶頸批量壓縮解決了網(wǎng)絡(luò)開銷頁緩存解決了讀寫路徑上的內(nèi)存效率問題。這四件事加在一起才是“Kafka為什么能支撐百萬并發(fā)”的完整答案。3. 可靠性四件套ack、ISR、HW、LEO的連環(huán)考3.1 生產(chǎn)者的acks參數(shù)每個(gè)選項(xiàng)背后的取舍可靠性這一塊面試官特別喜歡從生產(chǎn)者acks參數(shù)切入因?yàn)樗此坪唵螀s能帶出一連串概念。acks有三個(gè)取值取值行為風(fēng)險(xiǎn)適用場景0生產(chǎn)者發(fā)完即返回不等待確認(rèn)丟消息概率最大日志、監(jiān)控、允許丟棄的指標(biāo)1leader副本寫入成功即返回leader宕機(jī)時(shí)已寫消息可能丟失大部分默認(rèn)業(yè)務(wù)場景all等待ISR內(nèi)所有副本都寫入成功最安全但延遲更高交易、訂單、對賬等關(guān)鍵鏈路面試時(shí)只說“all更安全”不夠你要能說清楚為什么。關(guān)鍵在另一個(gè)參數(shù)min.insync.replicas。如果集群只有一個(gè)副本你就算設(shè)了acksallISR里也就它一個(gè)領(lǐng)導(dǎo)者一宕機(jī)數(shù)據(jù)照樣丟。所以生產(chǎn)環(huán)境至少要配3副本再把min.insync.replicas設(shè)成2含義是“至少寫進(jìn)兩個(gè)副本才算成功”。acksall配合min.insync.replicas2才是真正意義上的高可靠寫入。面試官可能會繼續(xù)追問“acksall會不會影響性能”。答案是“有影響但沒那么嚴(yán)重”。副本間的同步走的是內(nèi)網(wǎng)延遲通常很小遠(yuǎn)小于生產(chǎn)端和broker之間的網(wǎng)絡(luò)往返。關(guān)鍵鏈路用all非關(guān)鍵鏈路用1這是比較常見的生產(chǎn)策略。3.2 ISR機(jī)制判斷一個(gè)副本是否“跟得上”ISR全稱是in-sync replicas指的是和leader保持同步的副本集合。Kafka判斷一個(gè)follower是否跟得上靠的不是精確比較offset而是看它能否在replica.lag.time.max.ms這個(gè)時(shí)間窗口內(nèi)持續(xù)拉取消息默認(rèn)是30秒。超過這個(gè)時(shí)間沒拉取就把這個(gè)follower移出ISR。為什么用時(shí)間而不是用offset差距來判斷這是Kafka的一個(gè)設(shè)計(jì)細(xì)節(jié)。早期版本用“落后多少條”來判定結(jié)果在消息流量峰值時(shí)落后的follower很容易被誤踢出ISR導(dǎo)致副本頻繁進(jìn)出ISR穩(wěn)定性很差。后來改成時(shí)間窗口容忍短時(shí)間內(nèi)的領(lǐng)先更平滑。ISR在面試中經(jīng)常和選舉一起考。Kafka的leader選舉只允許ISR里的副本參與目的是保證新leader不會丟失已經(jīng)提交過的消息。你可以在回答里點(diǎn)一句“ISR就是Kafka在一致性和可用性之間做的動(dòng)態(tài)平衡”這會顯得你的認(rèn)知更系統(tǒng)。3.3 HW和LEO定義了消費(fèi)者能看見什么HWHigh Watermark和LEOLog End Offset是Kafka面試?yán)飪蓚€(gè)繞不開的縮寫。LEO是每個(gè)副本日志的最后一條offset位置。HW是ISR中所有副本都同步到的最新位置也叫高水位。消費(fèi)者只能讀到HW之前的消息HW之后的數(shù)據(jù)即使leader上已經(jīng)有了也不能算“已提交”。這個(gè)機(jī)制解決的核心問題是萬一leader掛掉換了一個(gè)新的leader消費(fèi)者之前讀到的消息仍然能對齊。如果消費(fèi)者提前讀了leader上還沒同步到follower的數(shù)據(jù)新leader切換后這些數(shù)據(jù)可能就沒了消費(fèi)者就會看到消息“回滾”。HW就是一道保險(xiǎn)。面試時(shí)可以打一個(gè)比方HW就像多人協(xié)作文檔里的“已同步版本號”大家都在這個(gè)版本號上達(dá)成共識后其他人才能引用這份內(nèi)容。這個(gè)類比面試官通常能秒懂。想再深入一點(diǎn)的話可以提一下Kafka 0.11之后對HW更新機(jī)制的改進(jìn)以及“Leader Epoch”這個(gè)概念。早期版本HW更新依賴follower的第二次fetch請求極端情況下會出現(xiàn)“數(shù)據(jù)丟失但offset不回退”的腦裂問題引入Leader Epoch后徹底解決了。面試中能講到這個(gè)層面差不多就是Kafka可靠性的進(jìn)階水平了。3.4 Leader選舉不是所有副本都能當(dāng)新leader當(dāng)leader宕機(jī)Kafka會從ISR里挑一個(gè)副本頂上。這里的核心參數(shù)是unclean.leader.election.enable默認(rèn)false意思是“不允許ISR之外的副本參與leader選舉”。如果把該參數(shù)設(shè)為true意味著哪怕一個(gè)副本落后得非常遠(yuǎn)它也可能成為新leader這就會導(dǎo)致大量已提交消息丟失。什么時(shí)候會有人舍得開一般是可用性優(yōu)先于一致性的極端場景——比如整個(gè)ISR全部宕機(jī)服務(wù)已經(jīng)不可用你寧愿快速恢復(fù)服務(wù)、接受丟一部分?jǐn)?shù)據(jù)也不愿意一直等ISR里的副本恢復(fù)。但絕大多數(shù)線上場景建議保持false。面試官如果問“Kafka是CP還是AP”你就可以用這個(gè)參數(shù)來回應(yīng)默認(rèn)情況下Kafka在極端故障時(shí)會犧牲可用性、保證數(shù)據(jù)不丟如果改了配置它又偏向可用性。Kafka本身不是簡單的CP或AP它是一套可配置的“最終一致多副本”模型。這一節(jié)如果能把a(bǔ)cks、ISR、HW、LEO四個(gè)概念串成一條線講清楚“生產(chǎn)者寫入 - 副本同步 - 消費(fèi)者可見 - leader切換”的全過程那面試?yán)锟煽啃韵嚓P(guān)的擴(kuò)展題基本都能接住。4. 不丟不重不亂消費(fèi)者端三個(gè)靈魂拷問4.1 消息不丟失要分三端看消費(fèi)端最容易翻車“Kafka消息會不會丟”是一道必考題。但很多人答的時(shí)候只談生產(chǎn)端和broker忘了消費(fèi)者這一側(cè)才是最容易丟消息的地方。完整答法一定要分三段生產(chǎn)者端開啟acksall配合retries重試、開啟冪等enable.idempotencetrue。冪等可以解決生產(chǎn)者重試導(dǎo)致的重復(fù)消息但它只保證單分區(qū)內(nèi)不重不保證跨分區(qū)事務(wù)。Broker端設(shè)置副本數(shù)大于等于2min.insync.replicas設(shè)置為2unclean.leader.election.enable保持false。這些配置配合起來broker層面基本能扛住單節(jié)點(diǎn)故障。消費(fèi)者端核心是“先處理業(yè)務(wù)邏輯再手動(dòng)提交offset”。如果你用自動(dòng)提交enable.auto.committrue消費(fèi)者拉取消息后立即提交offset但業(yè)務(wù)沒處理完進(jìn)程就掛了重啟后offset已經(jīng)提交那批消息就再也讀不到了。面試時(shí)可以直接給一個(gè)踩坑案例某個(gè)消費(fèi)任務(wù)在拉消息后調(diào)外部接口外部接口超時(shí)導(dǎo)致處理時(shí)間很長自動(dòng)提交的offset已經(jīng)到了但消息實(shí)際沒處理成功。后來改成手動(dòng)提交等業(yè)務(wù)邏輯執(zhí)行完再提交offset才把這個(gè)問題解決。這里有一個(gè)概念要澄清手動(dòng)提交offset后如果業(yè)務(wù)邏輯本身有bug導(dǎo)致消息處理失敗還是會“丟”——因?yàn)槟銢]重試就提交了。所以“消費(fèi)者不丟消息”的正確姿勢是業(yè)務(wù)邏輯失敗要主動(dòng)重試或者進(jìn)死信隊(duì)列只有確認(rèn)處理成功才提交offset。這才是工程上的完整閉環(huán)。4.2 重復(fù)消費(fèi)是“必然”冪等才是解法Kafka的默認(rèn)語義是at-least-once也就是至少一次。這意味著消費(fèi)者可能收到重復(fù)消息這是由設(shè)計(jì)決定的不是bug。重復(fù)消費(fèi)的三個(gè)常見來源生產(chǎn)者重試發(fā)送網(wǎng)絡(luò)抖動(dòng)導(dǎo)致生產(chǎn)者重發(fā)同一批消息broker收到重復(fù)數(shù)據(jù)。消費(fèi)者處理成功但沒提交offset就宕機(jī)恢復(fù)后會從舊offset重新消費(fèi)導(dǎo)致重復(fù)。Rebalance觸發(fā)分區(qū)重新分配后新的消費(fèi)者可能重新拉取之前已處理的消息。既然重復(fù)無法從根源上杜絕那解法就在業(yè)務(wù)側(cè)做冪等。面試答這里要舉幾個(gè)具體方案利用數(shù)據(jù)庫唯一鍵訂單號作為唯一索引重復(fù)插入直接報(bào)錯(cuò)忽略。利用Redis去重用SETNX設(shè)置一個(gè)全局唯一ID處理前先判斷是否已處理。狀態(tài)機(jī)校驗(yàn)比如支付回調(diào)場景判斷訂單狀態(tài)是否已經(jīng)“已支付”是則跳過。能答到這里說明你有生產(chǎn)意識。面試官要是再深挖可能會問“Kafka事務(wù)能不能實(shí)現(xiàn)精確一次”。這時(shí)候可以回答Kafka的Transactions API能實(shí)現(xiàn)跨分區(qū)精確一次但使用門檻較高而且對吞吐有影響。大多數(shù)業(yè)務(wù)用“at-least-once 冪等”就夠了沒必要為了精確一次把架構(gòu)復(fù)雜度拉高。4.3 順序性為什么局部有序是常態(tài)全局有序是奢望順序性問題在面試?yán)飵缀跏潜爻龅亩医?jīng)常以“怎么保證消息順序消費(fèi)”來問。先講底層同一個(gè)分區(qū)內(nèi)消息按照追加順序存儲消費(fèi)者默認(rèn)也是按順序拉取所以單分區(qū)是有序的。但一個(gè)topic有多個(gè)分區(qū)不同分區(qū)之間沒有全局順序。不同key的消息進(jìn)不同分區(qū)自然也就沒有順序保障。所以保證順序性的思路就是“讓需要有序的消息進(jìn)同一個(gè)分區(qū)”按業(yè)務(wù)key進(jìn)行分區(qū)比如同一個(gè)訂單號的消息全發(fā)到同一個(gè)分區(qū)。如果業(yè)務(wù)對全局順序有強(qiáng)需求那就把分區(qū)數(shù)設(shè)為1但吞吐會嚴(yán)重受限。消費(fèi)端也要配合即使同一分區(qū)的消息如果消費(fèi)者用多個(gè)線程并行處理順序同樣會被打亂。多線程消費(fèi)時(shí)要么按key做內(nèi)存隊(duì)列分桶每個(gè)key對應(yīng)一個(gè)單線程worker要么干脆串行化。面試官經(jīng)常在此處設(shè)置陷阱“我用單分區(qū)又起了多個(gè)消費(fèi)線程為什么順序還是亂的”這正是上面說的原因——broker里的消息有序但你的并發(fā)處理把順序弄沒了。分桶到內(nèi)存隊(duì)列是多數(shù)流處理框架的解法比如Flink里按key分組后就是并發(fā)處理但保證每個(gè)key內(nèi)部有序。再往深走一點(diǎn)你還可以提“順序性和性能天生沖突”。保序必然犧牲并發(fā)設(shè)計(jì)系統(tǒng)時(shí)要先搞清楚業(yè)務(wù)到底需不需要全局有序。大多數(shù)場景需要的只是“同一個(gè)用戶的動(dòng)作有序”這種級別按key分區(qū)就夠用了。5. 消費(fèi)組和Rebalance擴(kuò)展性的另一面5.1 消費(fèi)組Kafka能橫向擴(kuò)展消費(fèi)者的核心設(shè)計(jì)Kafka的消費(fèi)者是以“消費(fèi)組”為單位組織起來的。同一個(gè)組里的消費(fèi)者共同消費(fèi)一組topic一條消息只能被組內(nèi)的一個(gè)消費(fèi)者處理。不同消費(fèi)組之間互不影響各自維護(hù)自己的消費(fèi)進(jìn)度所以同一份數(shù)據(jù)可以被不同業(yè)務(wù)方消費(fèi)多次。這個(gè)設(shè)計(jì)解決了什么問題舉個(gè)例子一個(gè)訂單系統(tǒng)產(chǎn)生消息訂單服務(wù)消費(fèi)它做庫存扣減風(fēng)控服務(wù)也消費(fèi)它做風(fēng)險(xiǎn)識別。這兩個(gè)業(yè)務(wù)不希望互相干擾就可以各自建一個(gè)消費(fèi)組。批量和獨(dú)立消費(fèi)互不干擾在RabbitMQ那套模型里要麻煩得多。面試還常問“消費(fèi)者數(shù)量和分區(qū)數(shù)的關(guān)系”。答案是消費(fèi)組內(nèi)消費(fèi)者數(shù)量超過分區(qū)數(shù)時(shí)超出的消費(fèi)者會空閑。比如6個(gè)分區(qū)、10個(gè)消費(fèi)者只有6個(gè)能分到分區(qū)其余4個(gè)什么都不干。所以要提高消費(fèi)吞吐先看分區(qū)數(shù)夠不夠只加消費(fèi)者不加分區(qū)是沒用的。5.2 Rebalance的觸發(fā)機(jī)制為什么它常被詬病Rebalance可以說是一把雙刃劍。它保證了消費(fèi)組能自動(dòng)感知成員變化和分區(qū)變化但也是線上故障的常見源頭。觸發(fā)Rebalance的幾種情況消費(fèi)者加入或退出消費(fèi)組。訂閱的topic新增或刪除了分區(qū)。消費(fèi)者心跳超時(shí)被協(xié)調(diào)者判定下線。訂閱關(guān)系發(fā)生變化比如正則訂閱的主題變了。Rebalance的流程涉及一個(gè)關(guān)鍵角色GroupCoordinator也就是協(xié)調(diào)者。所有消費(fèi)者啟動(dòng)后向協(xié)調(diào)者注冊組內(nèi)推選出一個(gè)消費(fèi)者作為Leader由它根據(jù)分配策略生成分區(qū)分配方案再由協(xié)調(diào)者把方案廣播給全組。這個(gè)過程里整個(gè)消費(fèi)組會停止消費(fèi)看起來就是“消費(fèi)暫停、lag飆高”。面試官很可能追問“怎么減少Rebalance對業(yè)務(wù)的影響”。你可以給三個(gè)方向一是把session.timeout.ms和heartbeat.interval.ms配置合理避免因?yàn)樘幚砺徽`判下線二是調(diào)大max.poll.interval.ms給消費(fèi)者更長的處理窗口三是盡量把處理邏輯異步化讓poll線程保持活躍。真正線上出現(xiàn)“頻繁Rebalance”時(shí)十有八九是單條消息處理耗時(shí)超過了心跳閾值導(dǎo)致消費(fèi)者被踢出組。5.3 三種分區(qū)分配策略Range、RoundRobin、Sticky在Rebalance過程中具體怎么分配分區(qū)是由策略決定的這也是面試中常見的細(xì)節(jié)題。RangeAssignor按topic逐一分區(qū)。假設(shè)一個(gè)topic有10個(gè)分區(qū)、3個(gè)消費(fèi)者消費(fèi)者1分到0-3消費(fèi)者2分到4-6消費(fèi)者3分到7-9。如果多個(gè)topic都很大分配可能傾斜消費(fèi)者1總拿更多分區(qū)。RoundRobinAssignor把所有topic的分區(qū)拉平成一個(gè)環(huán)形隊(duì)列逐個(gè)輪詢分配給消費(fèi)者。多topic場景下更均衡。StickyAssignor在RoundRobin基礎(chǔ)上增加“粘性”盡量保留上一個(gè)分配周期中該消費(fèi)者已有的分區(qū)。這樣可以避免Rebalance時(shí)大范圍分區(qū)移動(dòng)降低不必要的消費(fèi)中斷和重復(fù)。Kafka 2.4之后默認(rèn)用的是StickyAssignor。它最核心的優(yōu)勢是“少移動(dòng)”尤其在消費(fèi)組成員頻繁變化的場景下能顯著減少遷移帶來的重復(fù)消費(fèi)。面試作答時(shí)可以補(bǔ)一句自己的判斷如果只有單個(gè)topicRange和RoundRobin差距不大多topic時(shí)RoundRobin更均衡Sticky更穩(wěn)定。實(shí)際團(tuán)隊(duì)都用Sticky因?yàn)樗染庥帜芸剡w移成本。6. 實(shí)戰(zhàn)追問積壓、延遲、集群異常怎么答6.1 消息積壓的定位思路先看生產(chǎn)還是消費(fèi)線上消息積壓是Kafka最常出現(xiàn)的故障類型面試官問“積壓了幾小時(shí)怎么排查”其實(shí)是在考察你有沒有一套可復(fù)用的排障方法。第一步先看有沒有l(wèi)ag。用kafka-consumer-groups.sh --describe --group 消費(fèi)組名可以直觀看到每個(gè)分區(qū)的current-offset和log-end-offset兩者差距就是積壓量。如果lag持續(xù)增長優(yōu)先懷疑消費(fèi)端如果lag沒有增長但消費(fèi)延遲很大再懷疑生產(chǎn)端寫入慢。第二步看消費(fèi)端是否出現(xiàn)了明顯瓶頸。常見的原因有單條消息處理太慢比如回調(diào)外部接口、慢SQL、加鎖競爭。消費(fèi)者并行度不夠分區(qū)數(shù)小于消費(fèi)者數(shù)量部分消費(fèi)者沒活干。消費(fèi)者代碼拋異常導(dǎo)致消息反復(fù)重試消費(fèi)進(jìn)度卡住。下游存儲出現(xiàn)性能問題比如數(shù)據(jù)庫連接池被打滿。第三步才是動(dòng)手解決。應(yīng)急方案不外乎四類加消費(fèi)者實(shí)例并保證消費(fèi)者數(shù)量不超過分區(qū)數(shù)臨時(shí)把積壓消息轉(zhuǎn)發(fā)到新的topic用多組消費(fèi)者并行分?jǐn)偤笤賹懟貎?yōu)化單條消息的處理邏輯批量寫入、異步化如果業(yè)務(wù)允許也可以直接跳過積壓只消費(fèi)最新消息。面試?yán)锬馨堰@些說得有條理就算通過了。不用怕方案不完美面試官想看的是你有沒有排查鏈路意識而不是有沒有一個(gè)“一招鮮”的答案。6.2 消息延遲高的排查順序鏈路三段的檢索法“消息延遲高”和“消息積壓”經(jīng)?;煸谝黄饐柕鼈儾煌耆且换厥?。積壓是存量問題延遲是實(shí)時(shí)性問題?;卮鹧舆t高的排查我更習(xí)慣按生產(chǎn)端、broker、消費(fèi)端三段來檢索生產(chǎn)端延遲看生產(chǎn)者send接口的返回耗時(shí)檢查網(wǎng)絡(luò)帶寬、bootstrap.servers配置、max.block.ms是否設(shè)置過小導(dǎo)致發(fā)送阻塞。Broker端延遲看磁盤IO是否飽和如果log.dirs所在盤IO使用率長期在90%以上寫入就會變慢頁緩存壓力大時(shí)也可能拖慢leader副本的寫入。消費(fèi)端延遲看單次poll返回后到業(yè)務(wù)處理完成的耗時(shí)以及是否有等待鎖、外部接口慢等情況。網(wǎng)絡(luò)鏈路內(nèi)網(wǎng)跨可用區(qū)時(shí)網(wǎng)絡(luò)抖動(dòng)可能導(dǎo)致fetch請求變慢延遲升高。有一個(gè)容易忽略的坑如果消費(fèi)者拉取速度快但處理速度慢lag會持續(xù)上漲如果處理速度快但拉取請求頻率被拉長延遲也會升高但lag不一定大。所以“消息延遲高”一定要先查是“拉得慢”還是“處理得慢”這兩條路的排查方向完全不一樣。補(bǔ)充一個(gè)實(shí)用命令Kafka自帶的kafka-consumer-groups.sh可以看到按分區(qū)細(xì)分的lag再結(jié)合消費(fèi)組日志里的poll耗時(shí)統(tǒng)計(jì)基本能定位到具體是哪個(gè)分區(qū)、哪段邏輯出了問題。6.3 Kafka部署與集群配置聊起來像有經(jīng)驗(yàn)的人面試一般不直接考“怎么敲安裝命令”但會通過“你們生產(chǎn)環(huán)境怎么部署的”“集群怎么規(guī)劃的”這類問題來驗(yàn)證你有沒有真實(shí)落地經(jīng)驗(yàn)。單機(jī)版部署很簡單下載Kafka二進(jìn)制包改config/server.properties里broker.id、log.dirs、listeners這幾個(gè)核心配置啟動(dòng)ZooKeeper和Kafka就行。新版Kafka支持KRaft模式可以不依賴ZooKeeper直接跑適合新項(xiàng)目。用Docker部署則是面試和本地實(shí)驗(yàn)的高頻場景。用bitnami/kafka鏡像時(shí)關(guān)鍵是配置環(huán)境變量KAFKA_CFG_BROKER_ID、KAFKA_CFG_LISTENERS、KAFKA_CFG_ADVERTISED_LISTENERS這些。其中advertised.listeners是個(gè)大坑容器內(nèi)用PLAINTEXT://localhost:9092外部客戶端訪問要用宿主機(jī)IP或者映射后的地址。很多人docker跑通了但外部連不上基本都是這個(gè)配置沒配對。集群部署要說的點(diǎn)更多broker.id必須全局唯一。副本數(shù)不要超過broker數(shù)否則副本會分配失敗。多磁盤環(huán)境log.dirs可以配置成多個(gè)目錄Kafka會自動(dòng)把分區(qū)分散到不同磁盤。內(nèi)外網(wǎng)分離場景要區(qū)分listeners和advertised.listeners否則客戶端拿到錯(cuò)誤的broker地址。版本升級不能跳版本Kafka消息格式和磁盤格式有兼容性要求升級前建議先查官方遷移文檔。這些屬于“沒做過真不知道”的經(jīng)驗(yàn)面試?yán)镏鲃?dòng)講出來比背任何八股文都有說服力。6.4 可視化工具與常用命令給回答加分的好東西面試聊到“排查問題”時(shí)順帶提一下可視化工具有意外收獲。工具本身不復(fù)雜關(guān)鍵是能體現(xiàn)你的實(shí)際運(yùn)維經(jīng)驗(yàn)。Offset Explorer原Kafka Tool桌面客戶端可以瀏覽集群、topic、分區(qū)和消息內(nèi)容適合本地調(diào)試。KafdropWeb界面輕量能看topic和消息適合快速驗(yàn)證。Kafka UI功能更全的Web工具支持查看消費(fèi)組lag、管理topic。命令行的幾個(gè)常備命令也值得熟記kafka-topics.sh --bootstrap-server ... --list / --describekafka-console-producer.sh 和 kafka-console-consumer.sh 用于驗(yàn)證生產(chǎn)和消費(fèi)kafka-consumer-groups.sh --describe --group ... 查看lagkafka-configs.sh --describe --entity-type topics --entity-name ... 查看topic配置面試時(shí)你可以說排查積壓我用kafka-consumer-groups.sh看lag快速驗(yàn)證消息格式用kafka-console-consumer.sh日??醇籂顟B(tài)用Kafka UI。這句話一出去面試官就知道你不只是紙上談兵。7. 最后再給一套能直接講的“口語化答案”與經(jīng)驗(yàn)收尾7.1 回答面試題時(shí)的節(jié)奏結(jié)論優(yōu)先分層展開很多人面試Kafka時(shí)明明知道答案卻說不好問題大多出在“沒有取舍、沒有節(jié)奏”。一口氣把知道的全倒出來面試官反而覺得你沒重點(diǎn)。我建議的節(jié)奏是“結(jié)論優(yōu)先 分層展開”。比如被問到“Kafka為什么快”你可以直接說“Kafka的高吞吐主要靠四個(gè)機(jī)制分別是順序?qū)?、零拷貝、批量壓縮和頁緩存?!比缓笾饌€(gè)機(jī)制一句話解釋如果面試官感興趣會自己對某個(gè)點(diǎn)繼續(xù)追問。這樣既顯得有框架又給面試官留了互動(dòng)空間。面試本質(zhì)上是對話不是你一個(gè)人的背誦比賽。你再熟的知識點(diǎn)也要學(xué)會“拋出來等追問”而不是一口氣講完然后冷場。7.2 一個(gè)能串起所有考點(diǎn)的完整場景日志數(shù)據(jù)管道如果面試官最后問“有沒有完整的項(xiàng)目案例”或者讓你“設(shè)計(jì)一個(gè)基于Kafka的架構(gòu)”我給你一個(gè)很快能講清楚的場景應(yīng)用日志數(shù)據(jù)管道。具體是多個(gè)微服務(wù)應(yīng)用把運(yùn)行日志和用戶行為埋點(diǎn)發(fā)送到Kafka下游有幾個(gè)獨(dú)立的消費(fèi)組一個(gè)負(fù)責(zé)實(shí)時(shí)日志監(jiān)控告警一個(gè)負(fù)責(zé)把數(shù)據(jù)寫入數(shù)據(jù)倉庫做離線分析還有一個(gè)對接Flink做實(shí)時(shí)大屏統(tǒng)計(jì)。這個(gè)場景能串起Kafka幾乎所有核心考點(diǎn)topic設(shè)計(jì)按業(yè)務(wù)域分topic比如app-log、user-event。分區(qū)與key日志按應(yīng)用名或用戶ID分區(qū)保證同一應(yīng)用或同一用戶的數(shù)據(jù)有序。生產(chǎn)端可靠性關(guān)鍵鏈路acksall普通日志acks1。消費(fèi)者組隔離多個(gè)消費(fèi)組各消費(fèi)各的互不影響。冪等消費(fèi)數(shù)倉寫入用唯一鍵做冪等避免重復(fù)數(shù)據(jù)。積壓排查通過lag監(jiān)控及時(shí)發(fā)現(xiàn)消費(fèi)瓶頸并擴(kuò)容。能在面試現(xiàn)場拿出這樣一個(gè)完整場景和只能零散背題的人相比完全是兩個(gè)層次。7.3 個(gè)人實(shí)操中的幾點(diǎn)體會這節(jié)算是我自己踩坑之后的經(jīng)驗(yàn)總結(jié)分享幾個(gè)對面試和實(shí)戰(zhàn)都有用的體會一是不要一開始就追完美配置。先用默認(rèn)配置把鏈路跑通觀察生產(chǎn)速率、消費(fèi)lag、磁盤IO這些指標(biāo)再根據(jù)實(shí)測結(jié)果去調(diào)batch.size、linger.ms、副本數(shù)這些參數(shù)。沒有數(shù)據(jù)支撐的調(diào)優(yōu)都是拍腦袋。二是lag監(jiān)控一定要做。對Kafka來說消費(fèi)組的lag就是消息系統(tǒng)健康的晴雨表很多故障在lag持續(xù)增長時(shí)就能被提前發(fā)現(xiàn)。哪怕不上監(jiān)控平臺定時(shí)腳本跑一遍kafka-consumer-groups.sh也強(qiáng)過完全不看。三是八股文里的原理和線上問題一旦對照上記憶會非常牢。比如你遇到過消費(fèi)者處理慢導(dǎo)致Rebalance再回去看session.timeout.ms和max.poll.interval.ms這幾個(gè)參數(shù)就再也不會忘記它們的作用了。面試準(zhǔn)備Kafka能背的東西很多但真正值錢的是“能講清楚為什么”的能力。希望這份拆解能幫你把散落的知識點(diǎn)串成體系。第22卷見。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
欧美91在线| 97大色网| 中文乱码字字幕在线第5页| 亚洲成人av色网| 男人女人18禁片免费看网站| 婷婷伊人| 最新中文字幕精品在线| 日韩在线电影| 亚洲天天精品| #NAME?| 色墦五月丁香| 色婷五月| 色色五月婷婷| 嗯嗯啊啊视频在线看| 日本Xx性爱| 好吊色综合| 国产自啪精品视频网站黑丝| 在线视频日韩欧美国产| 天天综合网在线观看| 人人妻人射| 91操操操操| 欧美,亚洲,日韩,v,天堂,手机在线观看| 欧插网站| 中国小夫妻勾搭露脸淫荡对白 | 欧美亚洲性爱一区二区| 9九九九九视频在线观看| 无码伊人久久大杳蕉中文无码| 亚洲精品一区二区精品| 一区二区三区 日韩欧美| 青娱乐二区免费| 色婷婷一区二区三区久久| 亚欧美色图| 97欧美色综合| 99在线精品观看视频中文 | 啪啪啪综合网| 欧美色亚洲| 熟女91网站| av橘色网站| 少好三P| 欧美偷偷网| 亚洲天天天| 加勒比久久av| 啊啊啊在线观看| 精品久久久av无码免费| 韩国三级一线观看久| 色汉综合| 自拍偷拍第26| 中文字幕交换人妻| 日韩国产中文字幕| 久久精精区一区二区一蜜桃一区二区| 亚洲欧美中日韩| 性色av一区二区| 欧美日动态视频| 亚洲色图欧美色图制服诱惑| 久久中文字幕女同性恋一区| 91精品人| 久久久久亚洲Aⅴ无码| 999亚洲国产视频| 欧美日韩一干二干| 99国内精品| 九九热免费国产视频婷婷伊人| 精品国产乱码久久久久久久久1| 欧美在线视频99| 亚洲丝袜色| 伊人97色天使| 伊人久久AV诱惑悠悠| 丝袜 中出 制服 人妻 美腿 中文字幕| 美女黄色91| 91无码西班牙视频在线| 欧美麻豆成人同性GⅤ在线| 亚洲一区中文字幕一区| 一区二区三区色综合| 在线播放中文字幕| 久久在线观看免费视频| 91快色色色色色| 狼人久草| 国产精品高潮久久AV| 人人爽夜夜玩视频| 一级性爱视频免费观看 | 久久久久久久久久久久久久9999| 日韩精品操少妇| 啊啊啊啊,啊啊好多水| 一起草三级AV电影在线观看| 天天搞在线综合网| 天美国产精品| 国产中文字幕在线观看| 国产美女在线精品免费看| 无码聚合| 啊啊啊快操我视频| 香蕉99秘 一区精品蜜桃臀| 国产成人无码啪| 日本不卡卡一区| 亚洲天天精品| 久久这里只精品99re66图| 国产福利夜| 精品一级| 91久久久久久| 啊灬啊灬啊灬啊灬高潮奶出了免费视| 97综合网| 久热免费视频| 女优大全 - 91n| 亚洲最新中文字幕免费| 中文在线久久字幕| 无码免费在线观看黄色片| 婷婷中文字幕| 国产99热| 丁香激情网| h色99999| 亚洲av淫乱| 国产精品午夜成人福利| 青娱乐淫乱1314| 大香蕉九九| 欧美一品道| www.91理论| 欧美中字二区| 中文字幕国产| 综合久久99亚洲人妻中文在线| 久久久久久久九九九九九九| 91欧美偷拍| 操b在线观看| 色综合美国| 久久久久女教师免费一区| 99精品成人免费看| 青青草公开在线免费不卡视频| 久草福利在线资源站| 激情小说亚洲视频| 欧洲熟妇xxXx欧美老妇裸体| 五月天精品| 黄网色一区二区三区四区精品| 色www精品视频在线观看| 一级毛片久久久久久久女人18| 亚洲少妇在线影音| 操逼啊啊啊91| 欧亚 另类 久| 久久99热这里只频精品6学生| 春色综合免费| 另类综合另类| 免费自拍三级综合| 日韩中文9| 人人操人人uiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii | 日韩啪啪啪啪啪| 天美传媒AV在线播放| 国产成人亚洲精品自产在线| 亚洲人成网站7777| 久久人妻无码毛片A片麻豆| 日本丝袜人妻内射| 97色网| 秋霞男人网| 精品久久久高清无码| jiujiujiujingpin| 涩五月婷婷| 日韩肏逼视频| 青青草玖玖爱| 女人的久久久| 人人操人人叉人人插人人| 四虎精品一区二区| 人妻在线大香蕉| 日本在线视频导航| 家庭乱伦国产精品| 热热色中文无码| 国产精品欧美激在线| 女人被添高潮免费视频| 亚洲日韩在线a不卡99精品| 操91| 色偷偷色偷偷欧美日韩| 极品极品色影院| 欧美综合国产精品久久丁香| 男人的天堂com| 久久久久网站-538在线视频-欧美永久乱码 | 亚洲不卡AV在线| 国产日韩精品人妻久久久久色欲网站| 蜜臀AV一区二区三区| 色天使大香蕉| 亚州精品一区二区三区香中文字幕在线| 九九九精品成人免费视频小说| 97精品网站| 精品99999久久久久久| 五十路三级片| 国产精品久久久久久亚洲色欲| 精品女同一区| 色眯眯av| 欧美青青视频| 色眯眯射| 91大神电影天堂| 欧美专区日本专区| 岛国毛片在线观看免费| 久久久久久九九九九| 中文字幕第95页| 国产天美传媒精品| 粉嫩AV一区夜夜嗨| 久久偷拍人| 91neishe| 亚洲情色91| 熟女突然公开看18禁影片 | 激情网五月天| 98一区二区精品| 亚洲自拍欧美色综合| 殴美牲| 亚洲图片欧美在线视频| 久草婷婷| 婷婷五月天_亚洲小说欧美激情另类_精品久久国产字幕 | 黄色av一区二区在线| 干干干天天| 成人影院永久免费观看网址| 26uuu偷拍亚洲欧洲综合| 日本韩国国产精品一区| AV天堂国产| 伊人一级免费黄片| 国产成人超碰在线| 欧美日韩另类在线播放| 亚洲āv网址在线观看| 一起草在线视频| 久久久96| 2024年最新色情网站在线观看| 欧美亚洲今日在线| 91视频伊人| 日韩免费福利在线观看| 国产性爱在线视频一区二区| 亚洲五月婷婷| 蜜臀久久一区二区| 久插综合| 使劲用力艹少妇视频一区二区| 91天天爱| 91黄射| 国产精品网址| 久久精品国产99精品亚洲蜜...| 岛国在线免费视频| 福利在线黄片| 97色冈| 91熟女综合| 老熟妇一区二区三区啪啪| 久久久久久久久久精| 欧美综合传媒| 好属操| 男人的天堂午夜av| 激情五月天社区| 欧美亚洲日韩人妻在线观看| 久久9亚洲| 久久久∴| 国产成人五月天丁香花| 9国产超碰| 永久免费发布性爱网| 国产精品熟女丝袜一区二区| 韩国久久97| 久久神马影院| 日日摸天天爽夜夜欢| 亚洲日本激情| 色色五月婷| 三级片大波波| 97亚洲中文| 亚洲欧美国产中文视频| 婷婷99狠狠| 无码人妻丰满熟妇奶水区毛片| 被窝影院午夜看片无码| 久久丁香五月天| 精久久久91| 91精品国产91熟女| 久久精品中文字幕观看| 欧美少妇熟女| 天天操天天日青青草超碰av| 国产强奸AV在线| 亚洲AV无码成人精品久久| www老逼91| 九七人妻在线| 老司机天天操| 玖玖97综合 | 一本色道久久综合熟妇| 88xx成人精品视频| 丁香六月激情综合| 久久影视二区三区行押| 伊人久久综合影院| 亚洲素人网| 午夜性生活av免费在线看| 青青操轻轻| 黄呦呦在线| 日本孕妇一区二区视频操逼免费看| 中文字幕成人理论在线| 青女在线| 国内精品a| 青青草在线成人视频| 亚洲双插| 亚洲AV无码国产精品久久久久| 九九热五区| 在线人成亚洲视频免费观看| 国产精品视频在线播放| 久久中文字幕一区不卡| 99re8超碰| 亚洲色图欧美一区二区不卡| 色欧美天天| 久久岛国| juliaann精品熟女一区| 日韩性爱免费观看视频| 亚洲视频小说| a v网站在线播放| 天美传媒在线一区| 日日操丁香五月天| 欧洲亚洲天堂精品| 久操网线| 加勒比色99999| 色婷婷六月| 97超碰色色| 99青草| 丰满人妻一区二区三区色-百度| 婷婷久草一区二区三区| 台湾一区国产高清在线| 亚洲综合99999| 日韩精品一区二区高清| 超碰97玖玖爱| 精品人妻一区| 91美女视频直播| www五月| 亚洲阿v天堂在线| 一区二区三区日韩欧美| 亚洲色图欧美色图日韩色图| 色偷偷综合91久久噜噜| 91亚州日韩高清| 亚洲影院成人| 日产精品久久久一区二区| 99色婷婷| 乱伦一二三区| 国产9熟妇视频网站| 综合网,亚洲,欧美| www.伪伪| 91国模| av72网| www99热| 中文字幕人妻资源在线| 日日干夜夜欢| 亚洲AO在线| 国产午夜无码片在线观看影视| 一本大道久| 天天综合日韩网| 人人看人人插| 91无码人妻精品一区二区三区蜜桃 | 色五月综合| 岛国黄片网站| 久久久久久久久女黄| 天天摸天天插天天日| 中文字幕久热视频在线| 97超碰美女| 91网九色蝌蚪操熟女| 99天天超碰| 五月激情综合网| 国产无码高清操逼视频| 中文字幕乱妇免费视频| 国精综合一二三区影视| 亚洲精品久久久久久久久豆丁网| 蜜乳性色无码专日粉嫩骚逼AV| 超碰97人妻在线| 欧美色图97| 台湾佬中文娱乐自偷自拍| 日韩精品1区2区中文字幕| 啊啊啊啊啊啊啊啊在线观看| 熟女91网| 国产外初女出血视频| 炮色五月| 久久久久久亚洲精品不卡人乳| 日本精品无码三级网站| 亚洲天堂一区二区久久| 青春草莓视频在线观看网址| 91操熟女视频| 久久久久女教师免费一区| 日韩精品人妻中文字有码在线| 欧美色三级片91| 性爱av在线免费观看| 自怕偷自怕亚洲精品| 欧美精品宗合| 日韩一级二级三级免费看完整版| 噜噜瑟| 国产AV人人夜夜澡人人爽麻豆| 99丝袜福利在线播放| 五月天社区| 国产69精品久久久久99尤物| 久久精品高清AV| 免费的很黄很污的全部视频| 91天天| 久久国产精品一级二级三级| 蜜臀久久99精品久久久久久婷婷| 欧美成人精品一区二区男人蜜臀| 激情人妻另类| 麻豆激情综合| 2017大香蕉国产精品久久| 一区二区久久天天干狠狠| 亚洲五月天激情| 美女自卫慰黄网站免费| 天天日B夜夜干B时时操B| 九九干| 少妇3P性爱自拍| 国产在线激情视频| 综合影视国产无码| av天堂手机版追回| 五月婷婷六月色| 婷婷月色| 亚洲熟妇乱女区二区三区| 97中文超碰| 青青草在线视频人人想人人上| 日韩无码嘿咻黑热久| 久久久久性熟视频| 欧美情色男人的天堂| 日韩精品人妻中文字幕久久久| 久久伊人青青草| 欧美乱妇狂野欧美在线视频| 久久夜夜夜| 久久久九精品| 91色狼| 亚洲av综合伊人久久| 国产中文字幕在线点播| 国语国产操逼伊人AV网| 久久精品99| 69超碰综合| 97欧美精品综合| 9久精品视频在线观看| 亚洲综合伊人| 久久久久久久久久9| 黄色免费网| 草草网站影院白丝内射| 色色色热| 亚洲成人妻日韩在线| 超碰欧美97资源| 97视频在线看| 欧美亚洲日本视频久久久| 婷婷久热| 欧美精品宗合| 日韩操逼HD| 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 亚洲欧美精品福利在线| 另类av天堂| 女人18精品一区二区三区| 96久久久| 日本一区二区电影网站| 东京热综合久久一区二区| 中文字幕国产在线天堂| 91狠| 操逼操逼视频操逼| 国产少妇肉丝在线观看| 日韩av色图| 啊啊啊啊免费视频| 岛国毛片手机在线观看| 久久a久久| 女上位精品在线| 秋霞色色影院| 久久丁香五月婷婷| 国产久久男人天堂| 100啪啪视频大全| 免费视频a级毛片免费视频| 亚洲欧美性生活| 三四中文字幕| 99久久精品国产高潮| 天色综合网| 青青操国产夫妻| 国产极品美女高潮无套在线观看| 欧美老妇综合网| 欧美黑人熟妇精品91| 秋霞视频一区二区| 91日日夜夜| 亚洲国产ⅴ高清在线观看| 九九无码久久精品视频| 亚洲精品91| 久久曰曰| 97少妇人妻中文字幕久久 | 午夜电影在线观看无码专区| 日本天天操| 国产久久一区二区三区野外在线| 97天天| 五月天综合在线| 欧美一区二区三区黄色影视| ji熟女.com| 婷婷综合在线观看| 美女天天干| 按摩中文字幕| AVE乱伦| 日本精品88888888| 女人与公拘交酡2020视频| 91丨国产丨白浆| 久久精品店| 亚洲激情综合| 日韩欧美传媒一区国产| 97视频免费播放| 亚洲男人综合| 久久的网站啊啊啊啊啊| 操逼逼一区视频| 亚洲色性情三级| gogogo免费高清看中国国语| 97超碰巨乳| av天堂天堂av日韩| 久久高清无码夜夜操| 无码精品久久久天天影视| 亚码人妻| 大香蕉综合在线| 久久精品无码专区| 97视频在线免费看| 素人一区二区三区日韩| 丰满人妻一区| 啊灬啊灬啊灬好深灬快高潮了动漫-国产字幕国产在线观看-B049AV | 欧美性天天影院| 超碰人人超在线观看| 亚洲性综合11| 丁香五月影院| 日本黄色精品专区网站| 九九九九一级| 91蜜臀在线久久久久| 国产精品一二三区18| 99精品久久久久久| 激情五月天网站| 91在线精品一区二区三区| 亚洲有码第一页| 啪啪啪综合网| 欧美一级特黄淫片在线观看| 中文字幕奈奈美被公侵犯| 青青草狠狠撸| 超碰97爽| 人人操人人大香蕉| 伊人加勒比| 人妻熟女一区二区| 色97| 欧美劲爆视频一区二区| 亚洲日韩天堂| 亚洲有薄码区久久在线一区| 国产精品亚洲四五区在线观看| 国产av美女被艹的乱叫| 国产精品一区二区手机看片| 东京男人天堂| 中文字幕日韩人妻视频一区二区三区交换夫妻| 五月色网| 强奸乱伦资源| 伊人专区一区二区三区| 奶水 人妻 哺乳 在线| 亚洲一二三| 久久国产三区| 免费黄色片子| 国产www色在线观看| 91精品老女人| 久久蜜桃一区二区| 亚洲麻豆18发?| 亚洲欧美性生活| 夜夜操二区| 国产熟女免费观看久久| 九九九免费视频| 岛国天天午夜影院传媒网| 欧美 青青草| 日本熟妇一区二区三区| 中文字幕在线高清男人的天堂| 日韩欧洲操屄视频| 国产精品96| 伊人宅男大香蕉| julia ann久久| 天美传媒Av在线| 欧美熟妇乱码在线一区| 荡小穴在线观看| 国产成人亚洲精品自产在线| 丰满的三级少妇欧美久久久| 懂色AV蜜臀无码精品APP| 一级@啪啪视频| 另类亚洲一区二区三区| 你懂的在线观看区国产| 国产h小视频在线观看免费| 色97干| 韩日欧亚a级| 欧洲一区二区| 日天天九九天堂666| 9.1小视频| 少妇熟女视频一区二区三区| 欧美综合色图片| 高精欧美色| 日韩无码第3页| 大香蕉中文201| 91熟女网| AAAA级日本片免费视频| 国内偷拍精品一区二区| 日韩无码操逼片| 懂色av色欲av蜜臀av| 2018天天干在线视频| 在线综合色| 伊人久操| 99这里有精品视频| 人人摸人人干| 9久热| 熟女六十路| 久久五月丁香| 日本天堂网| 成熟熟女国产精品一区二区| 亚洲国产精品久久久久婷婷老年| 国产美女自拍视频| 超碰97人妻免费在线| 国产乱色国产精品免费视| 国产美女高潮叫床视频| 激情五月天婷婷| 麻豆国产av网| 欧美综合色综合| 综合 亚洲 欧美| 久久精品人人做人人看| 特级毛片特黄久久免费看| 大香网伊人久久综合| 中文字暮97| 久久久99999久网站| 欧美日本不卡在线| 欧美一级美片在线观看免费| 韩国一级做A片免费的| 67914亚洲精品| 欧美色天堂网在线视频| 91n处女在线观看| 久久亚洲国产成人| 综合网色| 超碰色中文| 日本天天吊| 日韩av熟女一区二区三区成人| 夜夜综合| 97久久久| 黄网色一区二区三区四区精品| 亚洲欧美91| 水多多映视AV| 99久久久无码| 久久久专区| 啊啊啊好想要| 综合啪啪| 欧美激情久久久久| 天天激清| 亚洲激情综合| 中出人妻中文字幕91在线| 综合影院永久入口国产| 99性爱| 亚洲丝袜制服国产91_国语字幕免费观看完整版下载第5集_ | 任我爽在线视频免费观看| 日本成a人v网站在线观看| 国产欧美一区激情交| 在线亚洲精品久久久| 少妇久久久久久久久| 人妻激情偷乱视三区频一区二区| 青青草日本中文字幕| 永久免费观看的毛片的网站| 长长久久免费视频| 深夜激情| 凸凹视频在线观看| 国产偷人妻精品一区二区在线| 成人线上超碰| 国产精品天美传媒| 亚洲色交| 日韩成人综合网| 密臀成人视频久久久| 久久九九视频九九视频| 97久久免费| 日韩性爱视频在线免费观看 | 欧美综合自拍亚洲综合图| 少妇啪啪自拍| 中文字幕78| 中文字幕AV乱伦| 欧美内射少妇| 日本操逼aaaaa| 午夜福利久久久噜久噜久久综合 | 99免费在线视频| 狼人狠干| 四虎影视在线| 91国产操逼视频| 69综合网| 日韩无码a片| 久久久网一区| 欧美精品xxxwww| 啊啊啊不要嗯嗯在线观看| 久久美女国产| 国产欧美日产一区二区三区 - 国产欧美日 | 欧美99| 日韩超碰97| 久久骚少妇| 东京热,男人的天堂| 超碰久超碰久| 天天日天天插| 97天堂| 97激情97激情| 日本成人A片免费看| 久久国语| 婷婷丁香成人| 亚洲福利影院一区久久| 99啪啪视频| 精品人妻av在线播放| 丰满丝袜少妇AV| 丁香九月激情啪| 五十路熟女人妻一区二区三区四区五| 操人妻丝袜高跟| 中文字幕乱码人妻二区三区| 偷拍片久久| 丁香五月婷婷基地| 97超碰磁| 超碰97.com| 极品丝袜无码| 国精精品无码一二三区水多多| 91高清日| 久久亚洲不卡一区二区三区| www黄片免费看com| 欧亚日韩一区在线| 无码人妻精品一区二区三区九九| 99ri精品| 久久黄片国产一区二区| 亚洲91射| 自拍丝袜美腿人妻| 成人日本视频人妻在线| 99久久无码| 性感美女啊啊啊在线| 天天看天天综合成人网| 欧美色性爱| AV中亚| 亚州九九九精品视频| 欧美淫穴| 懂色AV蜜臀无码精品APP| 欧美综合自拍| 综合网亚洲1| 91天天综合网,天天综合网| 色色色色综合网| 九九精品99| 东京热天堂网| 欧美色图99| 国产乱码精品久久久久久| 囯产精品一区二区三区线|亚洲人成无码网WWW动漫|国产精品免费一级... | 成人性交午夜免费片| 成人久久精品| 女一区二区| 日韩有码免费视频| 日韩中文字幕二区| 久操网址| 国产高清吃奶免费视频网站| 色综合加勒比| 伊人网高清| 暴力av在线| 91n.欧美| 日韩精品一区,二区 九九...老司机| 日本三级小说中文字幕| 五月色综合| 国产激情在线观看| 老司机老司机午夜影院| 1人人看人人摸人人操| 一区在线精品中文字幕| 好吊色青靑草| 欧姜老司机| 无码二级三级| 日韩日韩日韩-国产乱码精品一区二区| 亚洲熟女一区| 超碰综合色| 一区| 久操在97| 日本欧美m v精品网站加| 色九九九综合| 日韩啪啪啪视频| 青草香蕉网| 青青草手机在线免费观看| WWW4虎| 青青草视频爽一爽| 嗯嗯嗯啊啊啊操的我好爽| 久久久99久9| 香一区二区三区| 无码99| 天天综合网久久ww| 在线 亚洲 网爆 自拍| 日日日啊啊啊| 日韩78m视频| 欧美91丝袜| 97少妇人妻中文字幕久久| 欧美疯狂做爰xxxx| 2017av无码免费无线播| 91爱网| 国产精品九九九| 日韩肏逼视频| 天天躁日日躁AAAAXXXX国产| 国产久久成人| 日本精品一区二区中文字幕| 大香蕉丝袜一级片| 国产剧情一区在线观看| 日本天天人人狠狠在线日美女 | 国产对白刺激视频| 家庭乱伦性爱av| 在线看免费无码AV天堂的| 五月婷婷爱六月丁香色| 偷拍欧美综合| 欧美在线l亚洲| 亚洲人精品久久久| 亚洲天天操| 免费又黄又裸乳的视频| 激情专区综合| 久极品在线观看| 成人黄页| 欧亚日韩中文在线| 欧美性生活免费网| 亚洲天堂 视频你懂的| 超碰超碰95| 天天摸夜夜操视频| 欧色网址| 91精品女厕偷拍视频| 欧美99| 中文字幕第23区| 亚洲国产97| 国产偷人伦激情在线观看| 欧美亚洲另类在线蜜桃| 蜜臀国产AV中文字幕| 欧美日韩亚洲五月天婷婷| 欧美最婬乱婬爆婬牲视频| 黄色免费网| 亚洲精品美女久久久久久久久| 蜜桃传媒一区二区亚洲| 亚洲影视高清第一页| 日韩免费a级毛片无码a∨| 久久精品国产72国产精品福利| 青青草原狼av| 夜夜嗨老熟女AV一区二区三区| 日韩国产精品人妻无码久久久| 思思热影视| 精品国产99| 日韩9区| 亚洲一本大道中文字幕无码在线| 日本人妻一区二区| 大香蕉视频啪啪啪啪| 日本免费中文字幕在线| 麻豆精品久久久久久久| 久久久久久久久9| 99re国产精品视频| 日本一区二区三区精品| 99久草| av天堂手机版追回 | 七月丁香婷婷| 丁香五月婷婷色| 2019亚洲男人天堂| 午夜亚洲国产理论秋霞| 精品久久在线区一区| 久久久久久性爱片| 日本天堂网| 日韩十八禁| 亚洲成a人在线观看久| 欧美性,亚州色| 白丝一区| 骚逼高潮久久精品| 亚洲美女精品九九视频| 免費黃色視頻觀看一| 亚洲AV在线资源| 欧美十八禁导航成人| 操学生天天| 人人操人人爽人人操人人| 亚洲欧美大| 超碰97网站| 欧美亚洲高清不卡| 亚洲欧美一区二区网址| 91暧暧| 亚洲不卡三级手机播放| 中文字幕日产av人| 免费观看性欧美一级| 天堂精品小草| 久久无码成人| 老鸭窝日丰县女人| 女人午夜视频777| 91模特在线观看| 丁香六月激情| 无码人妻一区二区三区免费九色| 婷婷四五区| 一起草三级AV电影在线观看| 91麻豆天美国产| 激情网色| 久热这里| 亚洲有码 视频一区| 亚欧高清| 天天操美美| 亚洲操逼视频网站| 国产综合久久久麻桃个| 国产无遮挡| www.黄色在线| 青青草一区二区高清无码视频| 综合网欧美在线| 国产超碰AV在线精品| 一区二区三区成人 | 日产国产精品中文久久婷婷| 在线亚洲 欧美 日本专区| 日日干男人的天堂| 色综合网1| 天天综合网网欲色| 色九九九综合| 国产精品电影| 日日干天天干夜夜爽| 婷婷15月天青娱乐| 丁香五月激情啪啪| 亚州熟女乱伦| 日韩 女同 综合| 五月丁香啪啪| 国内精品a| 欧美性第1页| 淫色网综合| 久久久精品视频免费观看| 欧美翘臀视频网站一区二区三区 | 内射夫妻三片| 国产青青综合伊人| 国产suv精品一区二区四| 人人喜人人妻| 日韩国产欧美伦理在线| 久草免费在线视频| 99只有精品| 26uuu欧美| 日本天天操| 久久专区| 在线强奷到舒服的无码视频| 国产高清无码一区二区三区四区皇冠| 亚洲91网。| 91亚洲综合在线| 91高清无码下载| 国产一区二区三区,在线观看观看| 亚欧毛片基地国产毛片基地| 久久久9品一区二区三区| 999色欧美中文字幕| 丁香五月婷婷五月| 国产精品成人久久一区二区三区| 中文字幕一品色图| 99re9这里只有精品| 婷婷精品视频| 欧美日韩 强奸乱伦| 2023天天操夜夜操| 亚洲欧美清纯| 天天搞欧美| 青青草手机在线免费观看| 日韩不卡a级视频专区| 超碰午夜| 操一对老熟妇爽上天视频| 国产少妇高潮| 国产一级久久久| 色五月丁香五月| 女人午夜视频777| 18禁精品网站在线看| 久久久精品网站| 国产一区在线看| 1.igao73.com 加入收藏 免费专区 国产精品 中文字幕 日韩精品 欧美精品 精彩 | 亚洲精品亚洲人成在线麻豆| 丰满少妇一区二区三区免费看| 久久久久无码一妻区| 日韩久久超碰色| 狠狠综合| 大香蕉啪啪啪| 99热精品在线播放| 欧美强奸乱能| 精品国产91av一区二区三区| 日韩无码极品| 大逼色网站| 天天综合网亚洲综合网| 日韩精品一区,二区 九九...老司机| julia在线观看久久| 欧美制服网站美腿丝袜| 中文字幕黑人大片| 五月丁香婷婷综合| A久久| 五月天婷婷激情| 日韩性爱播放| 久久伊人大香蕉| 嗯啊抽插大香蕉网页| 久久久精品91八戒| 大香蕉黄色一级片免费看| 人人摸人人入| 免费观看性欧美一级| 韩三级a视频在线观看| 精品日韩人妻视频| 久久91视频| 日韩欧美亚洲一区二区三区影院| www.99中文字幕| 天天躁日日躁XXXXYY| 99久在线精品99re8热| 亚洲日韩成人性爱视频| 色区久久| 婷婷亚洲中文字幕在线| 色婷婷成人综合| 小骚逼被操的爽不爽| 国产乱人妻精品入口| 色噜噜狠狠色综无码久久| 东北女人高潮视频| 97精品免费视频网站| 乱操乱伦AV| 丝袜美腿制服人妻二区中文字幕| 人妻乱仑一区二区三区| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 99国产在线 精品 视频| 欧美日韩操逼动图| 99视频在线| 熟女人妻av在线资源,黄色的资源| 一区二区三区国产精产| 天天天天天超碰| 碰人碰碰人人开房人肉| 91久| 天天做天天爱夜夜爽毛片试看| 性开放中文AV高清无码免费看| 五月丁香啪啪| 亚洲天堂另类小说男人| 久久视频少妇美女| 男人天堂2030| 欧美大香蕉久| 激情丁香婷婷| 超碰 av 女人天堂| 亚洲在钱| 欧美成人性爱视频在线播放 | 91色色综合| 午夜在线播放| 亚洲成人日韩小说| 操操碰| 性生活无遮挡纯毛片在线看| 青草精品视频一日本久久久久网站| 啊啊啊啊操死我| 国产 日韩 欧美 中文 另类,国产 欧美 另类 制服 变态,高清 日韩 欧美 中文,高 | 欧美日韩免费专区在线| 天天综合麻豆视频| 国产毛片毛片4p懂色| 亚洲综合中文字幕有码 | 91综合网站| 日韩视频啪啪| 天天淫人人妻日日色| 丰满少妇精品一区二区| 五月丁香六月综合缴清无码 | 日韩AV电影网站| AV色五月天| 欧美,亚洲,日韩,v,天堂,手机在线观看 | 色情乱伦AV| 人人喜人人妻| 91女色| 久久AV无码网址| 日本三级日本三级三级人妇四虎| 亚洲欧美变态| 亚洲AV无线| 日本有码影片下载 | 免费啪啪啪网站18岁| 麻豆一区二区三区精品| 韩国免费播放一级毛片| 日本123区操B视频| 天天操天天射青青草| 天天影视综合色| 日本国产高清色www视频在线| 蜜臀AV成人精品蜜臀AV久久| 蜜臀AV一区二区三区| 操屄不卡视频| 欧美日本不卡| 欲香欲色综合天天伊人| 亚洲国产高清福利视频| 99re6国产精品99re| 人妻天天爽天天爽三区| 色综合久| 97欧美日韩综合| 中日高清无码操逼视频| 中文字幕视频免费| 人妻81p| 国产性爱欧美性爱在线| 超清福利精品视频在线| 久久精品亚洲东京热色播| 手机看片91人妻| 亚洲人妻一区二区三区| 一起草视频在线| 国产在线76页| 九九热国产| 国产真实野战在线视频| 97精品一区二区视频| 久久草大香蕉| 成人开心网在线视频| 女人高潮大叫一级毛片| 日本ZZ高免费A级视频| 天天懆天天日| jazzjazz国产精品麻豆| Av色五月| 中国AAAAAA黄色片| 激情久久av一区av二区av| 天美传媒精品一区二区三区| 亚洲啪啪性视频| 亚洲人妻爽爽爽| 亚洲综合另类| 天堂v无码免费视频| 夜夜嗷嗷一区二区| 亚瑟国产精品久久无码| 天天操天天日天天干| 精品伊人久久久大香线蕉小说| 日本免费一区二区不卡| 日本 欧美 国产一区| 97天天| 欧美精品在线观看| 亚洲国产欧美一区二区潘金莲| 欧美久久人妻少妇一区二区| 亚洲成A∨人影院在线欢看| 91激情综合| 阿姨一区二区免费视频-高清正片西瓜视频下载app-T450AV | 日韩性爱播放| 久久宗合97| 欧美色图天堂在线| 欧美中文字幕日韩在线| 久久久熟女一区| 日本熟人妻中文字幕在线|...久久国产精品-国产精品_日本一区二区三区中文字幕 | 日本精品一区三区| 另类天堂| 精品中文日韩字幕视频| 五月丁香激情综合网| 四虎影视国产精品| 18一区二区三区| 91久久九九精品国产综合| 曰本道人妻久久久在线不卡色视频| 亚洲av淫乱| 一级一性爱免费视频| 欧美大色交| 这里有精品| 曰本人妻人人澡人人夹| 91亚洲欧美激情| 中文字幕十五区| 无码国产精品午夜不卡(| 日本道不卡| 日韩国产九九精品一区二区三区毛片| 91精品久久久久久77777| 亚洲一区操| 国产美女91| 欧美成人亚洲精品| 久久婷婷影院| 干干干天天| 91综合色噜噜| 精品中文一区二区| 超碰97爽| 四虎影院成年人片| 久久激情婷婷| 精品制服美女中文一区二区三区| 超碰亚洲欧美日韩无| 伊人色综合网电影| 国产色产精品在线观看| 99草精| 亚洲和欧美裸体美女双飞视频| 性色av网站| 人妻丰满熟妇一区二区三| 欧美97在线欧| 91模特在线观看| 亚洲 欧美 小说| 亚洲骚女一区二区三区| 五月天激情四射| 国产精品一二三在线看| 亚洲av青草久久一区二区| 中文字幕熟女人妻丝袜丝| 91天天爱| 7月婷婷综合| 日韩在线视频1234| Julia在线播放亚洲久久| 亚洲国产精品99久久久| 99婷婷| 久久久精品成人国产| 亚洲国产精品V?在线播放| 丰满人妻一区二区三区| 夜夜夜夜久久久久| 黄站在线免费观看| 97视频620| 国产久久日韩网站导航| 欧美 中文字幕 一区| 狠狠操天天干| 色色99| 六月丁香啪啪| 99热9| 午夜免费福利视频一区| 欧美成人一区二区三区在线播放| 国产三级多多影院2022国产AA一级毛片无码| 国产精品国产亚洲区艳妇糸列| 国产精品久久久久9999小说| 日日摸日日弄日日拍| 熟女高潮精品一区二区| 美女露胸露屁股| 青青青操| 性欧美体内射精| 91亚州欧美| 97视频在线观看高清资源| 中文字幕人妻色偷偷久久皮 | 丰满欧美放荡少妇在线| 秋霞福利网| 欲色啪| 国产91丝袜在线播放蜜月| 97香蕉人人乳| 精品国产嫩穴视频|