日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满av-国产精品中文字幕免费观看-亚洲成人久久一区二区三区-国内少妇偷人精品视频无缓冲-一区二区国产精品日本一区二区三区在线网

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
返回資訊列表
二级毛片| 美女久久久| 日本孕妇一区二区视频操逼免费看 | 日韩视频小说在线观看| 无码高清操逼网址| 秋霞一区二区三区四区五区六区七区| 久久AV无码AV| 精品人妻1237| 国产美女自拍AV| 韩国轻伦国内自拍一区| 啊啊啊爽爽| 婷婷五月天丁香花| 观看视频图片一区二区三区| 91丝袜美女视频| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 极品内射| 亚洲啪AⅤ永久无码| 91一区二区| 国产精品久久久久久久久久久久久久久久久久| 中文精品一区二去| 天天α片| 人人操人人叉人人插人人| 超碰综合色| 白丝被操91| 熟女色图在线| 夜夜操美女| 成人A片男人的天堂| 人人操人人操人人人操| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 国产美女口爆吞精| 97精品网| 91是天天| 亚洲欧洲自拍| 亚欧美天堂在线| 97国产精品| 日本女厕偷拍| 国产精品久久久久久 百度| 亚洲精品黑丝| 九九热免费视频| 男女啊啊啊啊啊| 精品99999久久久久久| 欧美组图日韩亚洲中文字幕| 97日视频| 日本黄 R色 成 人网站| 99热一区二区三区四区| 免费亚洲黄色视频在线观看| 久久青娱乐| 色婷婷电影网| 久久久久久久伊人精品| 97国产伦理| 91精品国产高清久久久久久,亚洲成人| 久久大陆| 久久久久9| 日韩字幕一区| 美女网站黄页| 久久精彩视频| 久久久久久久亚洲Av无码| 欧美在线|亚洲| 丝袜 亚洲 偷拍| 欧差乱伦二三| 曰韩精品九九无码| 一类av片在线看| 少妇无码999| 99在线视频播放| 97国产成人精品免费视频| 97久久久久久久久久| 韩日精品四区| 99国产精品视频尤物| 久久久性爱| 裸体女人草逼视频播放一区,二区,三区,四区,五区 | 亚洲男人的天堂亚洲| 国产 日韩 欧美一区| 久久偷偷色综合蜜桃| www五月| 日韩欧美日韩| 91九色丰满高潮| 91亚洲黑人| 熟女精品va中文字幕| 久久久久久人| 亚洲精品国产精品乱码不卡| 久久一二三四五六七八九区区区 | 天天日天天爽| 麻豆一区二区AV天美| 欧美色图私拍91| 手机在线观看不卡无码av| 久热伊人| 粉嫩久久久极品| 超碰国产情侣自拍网| 插欧洲美女欧美精品| 成 人 A V免费视频在线观看| 无码九九| 91n免费处女| 亚洲激情网一二三四区| 精品-91人妻子系列| 黑人美精品 A片| 超碰91在线| 欧亚 另类 久| 一本久道久久综合狠狠爱一密臀精| 欧洲精品久久| 操操操操网黑人| 亚洲中文字幕噜噜噜久久久| 精品女人999| 亚洲最大网站av| 精品国产一区二区三区香蕉欧美| 久久精品国产亚洲AV先锋| 97资源站国产精品| 亚洲综合校园春色| 天天干天天中出av| 国产精品亚洲四五区在线观看| www久久久| 大香蕉日韩| 久久国产精品一区二区| 精品国产乱码久久久影院| 2003天天干夜夜操| 日本幼女18+| 97资源免费视频| 在线黄色污污网站| 日韩精品9999| 色制服丝袜夫妻av一区| 国产丰满少妇久久久精品影院| 大香蕉亚洲中文| 亚洲精品久久久久久久久豆丁网| 超碰99在线| 99热在线观看| 六月丁香啪啪啪| 日本三级韩三级99久久| 久久久噜噜噜久久久| 丁香六月婷婷综合| 7月婷婷综合| 欧美一区二区在线资源| 久草色悠悠在线视频| 800zy一区二区| 强上我不卡卡| 国产精品在线网站| 亚洲丰满很很操| 色 亚洲 91| 欧美天天综合站| 人妻天天爽夜夜爽2| 亚洲97资源| 五十路成人在线视频二区三区| 91爱做| 日本天堂在线播放| 啪啪啪综合| 欧美色图20p| 东京热双插| 亚洲人妻久久| 亚洲成人在线高清| 69精品久久久久中文字幕| 中文字幕一区日韩精| 一区二区娱乐网站| 91草草草| 91热热色| 久草新在线| 一道α片欧美| 欧美亚洲另类在线蜜桃| 天天流夜夜操| 熟女中出视频| 色拍偷亚洲| juliaann欧美丝袜办公室| 国产精品第一页国产大屁股视频免费区| 成人久久久| 国内精品嫩模A∨私拍小视频| 91N综合网在线| 十八禁黄色| 三久久久四久久久久| 精品无码久久久久久国产浪潮| 淫荡熟女乱伦网| 国产精品一区av在线| 欧美性爱在线无码| 亚洲美乱| 久久久久96| 亚欧美色| 小情侣高清国产在线视频| 久久黄黄| 97网址97| 大学生口爆吞精| 性爱av在线免费观看| 久久久久无码| 国产suv精品一区二六| 黄页av| 啪啪啪精品视频| 六月丁香啪啪| 96久久久精品| 老司机福利青青草| 天天日天天爽| 俺也射| 成人精品在线免费视频| 99热在线观看| 超碰免费欧美7| 日韩无码人妻| 九九色逼| 伊人网一本| 素人一区二区三区日韩| 日本韩国一本产品小视频日本韩国一本产品久久久产品小视频日本韩国一本产品久 | 97人妻色| 综合久久六月久久婷婷| 中字幕人妻一区二区三区| 国产av又色又爽又黄| 91美女中出| 亚洲欧美一区二区不卡视频播放| 97久久超碰| 精品久久久久久中文| 丁香五月激情网| 男女性扦B| 尤物av网站免费在线播放| 中文字幕性感少妇av| 蜜桃视频一区二区三区在线观看| 97神马久久| 人人摸人人干人人拍97| 91精品成人| 人妻精品视频一区二区三区| 久久精品小视频| 超碰伊人在线| 黑人嘿嘿嘿超爽免费视频| 射丝袜高跟鞋99| 日本一二区不卡| 成人性爱美曰韩| 久9久9精品| 91欧洲国产成人久久精品网站| 国产精品香蕉热久久新品| 日韩精品第3页| 91香蕉国产尤物视频| 91操操| 91色综合色| 萌白酱自拍视频| 日欧美色| 操操逼视频| 97蜜桃综合| 粉嫩AV一区二区夜夜| 中文字幕 国产区| 亚洲的天堂网| 天天色综亚洲91污| 91精品在线播放| 一区二区三区精品久久| 羞答答AV中文字| 一区二区娱乐网站| 91综合天天看| 丁香五月色情| 91n欧美| 大香蕉在线视频15| 日本成人在线不卡一区二区三区| 日韩人体偷拍| 性videos欧美熟妇hdx| 亚洲人在线| 欧美区亚洲区偷拍区| 欧美色图片91| 亚洲欧洲精品视频发布| 超碰在线日韩一区| 99久在线精品99re8蜜桃| 中日高清无码操逼视频| 国产精品乱码久久久久久久久| 韩国一级做A片免费的| 99精品九九九九九九| 日韩三级一区 | 蜜臀99久久精品| 热99这里只有精品| 9丨久久九九九| 69人妻人人揉人人躁人人精品| 人人操,人人液| 久久內射| 美国aaaaa一级黄片| www久久精品| 欧美色综合影院| 9丨久久九九九| 黑丝91视频| 18禁精品网站在线看| 果冻传媒A片一二三区 | 最新亚洲风情电影| 欧美网站免费| 欧美综合天天| 屌妞视频久久久久久久| 久久女婷| 91久久免费视频互動交流| 精国久久一区二区三区98| 亚洲天堂无码| 999久久久免费精品国产牛牛| 69视频福利导航| 国产一区二区啪啪视频| 91色香| 亚洲欧洲色情高清| 久久久久成人蜜桃精品| 少妇啪啪自拍| 亚洲熟女av中文字幕| 99国产精品久久久久久久成人热| 岛国成人av在线播放网址| 超碰午夜| #NAME?| 亚洲日韩肥臀视频在线观看| 日韩成人电影AV| 国产a片操逼| 成人无码欧美一级A片狼牙直播| 天美精品av| 伊人网综合在线视频| 97综合国产| 女人的天堂大香蕉网| 亚洲国产精品久久久久久久久久| 亚洲综合另类小说色区亚洲成av人片在www | 蜜臀AV一区二区三区激情综合| 再深点灬舒服灬太大了添视频 | 亚洲黄色网址视频| 亚洲无码超碰免费| 夜夜欢天天干| 亚洲 无码 有码 中文字幕| 色 婷97| 日本中文字幕在线视频| 日韩在线一区二区| 黑人娇小av在线播放 | 亚州色站 日韩电影| 手机看片1024你懂的国产| 亚洲欧美高清| 99少妇| 无码人妻系列少妇| 999久久久精品国产| 国产精品免费视频人成| 国产最火爆久久国产网站网站| 欧美性暴力猛交| 少妇专区一二三四五| 有码人妻系列| 淫淫总合网| 人人色人人操在线| 极品白嫩美女白浆成人福利在线看| 9国产超碰| 亚洲情欲| 国产成人久久精品蜜臀| 精品少妇人妻一区二区三区| 69AV女优男人的天堂| 91精品久久久久久77777| 啪啪资源网| 不卡中文字幕aⅴ在线| 国产激情在线| 国产精品久久久久久久久久久久久久吹 | 91高清日| 96国产精品| 日韩欧美麻豆| 清纯唯美激情| 中国和日本人色哪个不下载能放| 蜜臀在线看片| 久草色悠悠在线视频| 亚洲国产精品久久久久婷婷青年| 日本免费中文一区二区三区四区| 天天干少妇| 五月激情综合网| 九九热精品| 丁香五月性| 91日韩在线| www色色com| 婷婷综合网| 日韩人妻少妇 一区二区三区| 一区二区三区机械有限公司| 美女裸体无遮挡永久免费观看网站 | 国产国产亚洲一二三久久| 亚洲精品人伦一区二区| 夜夜无码| 国产精品另类| 一区二区三| 亚洲影视综合| 人妻娇喘 激情视频| 欧美 色 亚洲| 国产精品香蕉| 国产精品人人爽人人做可爱福利| 小视频玖玖| 十八禁成人网站在线观看| 91小视频| 欧美嗯啊……在线观看视频免费| 久久综合精品一区二区三区| 美腿丝袜高跟网免费视频免费视频| 极品久久久久久久久久久久久久| 国模久久在线| 神马麻豆福利院| 午夜性生活av免费在线看| 日韩免费三级黄片电影| 看黄片视频免费| 9久热| 亚洲少妇喷视频看| 亚洲欧美色综合| 色臀aV| 亚洲欧美校园| 男女做爰猛烈动高潮A片免费应用| 亚洲一曲日韩精品| 婷婷久久综合久| 亚洲综合五月天婷婷丁香| 秋霞男人网| 欧美超碰人妻97| 91综合天天| 黄色AV免费| 插日本熟女视频| 亚洲美乱| 97超色| 亚洲情色综合| 懂色天天爱天天日天天射天天澡| 九九亚洲| 吉川爱美亚洲二区在线| 妇女一区二区三区| 日韩国产欧美伦理在线| 国产精品秘 福利姬在线观看| 4141514逼喷水三级片| 夜夜操一区二区| 青青青青青手机视频| 天天看精品动漫视频一区| 欧美日韩国内不卡| 伊人97色天使| 日本色日夜干| 日本五十路熟女一区二区| www.zbzhongsen.com| 国产成自自拍在线观看| 99re6久热只有精品6在线直播 | 12一15性XXXX粉嫩国产| 久久丁香五月婷婷| 99在线视频播放| 久久午夜色播影院免费高清| 国产真实野战在线视频| 超碰人妻中文在线| 亚洲高清自拍| 五月开心网| 超碰天天操你比| 久久男人天堂| 美女黄频a美女大全免费皮| 中文字幕视频一区视频二区| 色香欲综合| 日韩国产成人自拍视频| 青木玲在线不卡| 精品人妻一区二区三区在| 国产女人成人精品视频| 动漫区日韩区欧美区| 三上悠亚在线毛片91| av天堂5| 9999亚洲电影| 久久受www免费人成| 国产三级日产三级韩国三级| 四虎免费看黄| 中文字幕第9页萱萱影音先锋| 狠狠操狠狠| 亚洲色图第一页| 最新三级网址| 97视频在| 日本黄色大片一级视频免费麻豆| 99爱久久视频频| 97精品网| 91亚洲人电影| 欧美高清第一页| 久久久国产三级黄色片| 色哟哟av| 黄色av一区二区在线| 91精品国久久久久久无码| 成人午夜高潮av猛片| 欧美夜夜狠| 色色九区| 婷婷激情五月| 欧美日韩资源| 中文字幕五区| 亚洲一区在线观看欧洲| 日本熟人妻中文字幕在线|...久久国产精品-国产精品_日本一区二区三区中文字幕 | 97亚洲色图| 日韩一级欧美一级在线观看| 欧美在线亚洲| 另类专区在线观看| 91亚洲综合在线| 欧美亚性天堂| 1024午夜激情男人的天堂| 成人AV在线网站| 亚洲中文日韩精品| 国产精品伦理| 国产精品老熟女一区二区| 亚洲日韩国产精品| 久久精品99| 这里都是精品| 五月婷婷影院| 嗯嗯嗯啊啊在线观看| 日本污ww视频网站| 欧亚三区动漫| 操婷婷逼| 五十路三区在线| 人妻夜夜爽天天爽麻豆三区网站| 日韩三级伊人| 天天天天天天天天综合| 风流老熟女一区二区三区l| 偷拍片久久| 亚洲啪啪性视频| 哈哈操电影| 91爽啪| 超碰97人人cao| 亚洲国产精品乱码在线观看| 乱伦a片视频| 日日摸日日碰| 清柠毛片| 日韩av不卡在线看| 天天久久久久久| 熟女人妻av在线资源,黄色的资源| 影音先锋每日最新资源在线观看 | 91人妻Pr| 少妇久久| 97超碰色中文字幕| 天天综合色电影| 日韩黄片视频试看| 伊人性在线视频| 啊啊啊啊视频免费| 丰满人妻一区二区三区四区| 97免费视频在线| 日韩精品熟妇| 亚洲一曲日韩精品| 999综合网| 免费看污网址| 91色综| 中日亚韩免费视频| 91色欧美| 久久久久久中文版| 日韩av在线免费网站| 蜜桃臀一区二区三区久久| 九九九九久久久| 蜜乳AV免费观看| 久久久久久免费电影| 久悠悠av| 亚洲欧美在线观看2021 | 搡老女人911熟妇老熟女| 亚洲成人妻日韩在线| 欧美日韩91| 91九色蝌蚪在线观看| 加勒比色99999| 性生活无遮挡纯毛片在线看| 曰韩精品九九无码| 国产超碰人人爽人人做| 日韩中文字幕国产| 老司机福利青青草| 女优大全 - 91n| 亚洲AV色图一区| 天天干天天日天天射黄色片| 人妻精品综合中文字幕在线| 日本片日本片祼观看网站在线看中文版网页在线看 | 色99在线| 日韩不卡毛片Av免费高清| 欧美极品美女aaaaaa级黄片| 国产精品噜噜噜日日日| 一本久久精品中文字| 强上我不卡卡| 婷婷在线播放| 激情视频网址| 乱伦图一区| 国内毛片国产欧美拍| 98久久超碰| 久久久久久久久女黄| 天天射夜夜| 久久鲁夜| 午夜福利久久久噜久噜久久综合 | 九九九九九九成人| 97超碰热线| 蜜臀av一区二区三区免费观看| 亚洲操人| 欧美三级中文字幕hd| 国产成人综合在线播放| 豆花视频操逼网址| 一级AV性爱| 99久久99久久免费精品蜜臀| 69麻豆天美| 欧美激情在线观看视频| 久热伊人| 亚洲综合在线91| 91成人精品| 99精品无码| 久草成人影片| 91亚洲狠狠色| 夜夜夜爽www精品视频| 亚洲熟女少妇免费视频| 丰满熟妇大乳做爰| 99久在线精品99re8| KK色在线影院| 亚洲国内精品成人不卡| 欧美色日| 欧美亚洲美少妇一区二区| 嗯嗯啊好大| 天堂国产AV| 97超碰天天爱天天爱| 欧美第38页| 色爱欲亚洲| 美女毛片999| 色色综合97| 色网1| 亚洲凸凹超碰成人| 欧美日韩国产色五月综合在线| 青青草无码视频| 亚洲人妻久久久| 亚洲日韩狠狠撸视频| 九t超碰| 欧美人妻制服| 人妻色偷色噜| 四虎国产精品永久地址入口| 热99这里只有精品| 色色色五月婷婷| 五月激情综合网| oumeisetu综合| 欧美日韩一干二干| 97视频在线免费| 欧美91变态| 操逼无码操逼| 久久久久成人亚洲国产| 五月天成人综合| 九九热九九热| 亚洲性图91| 白嫩妹子国产骚| 97超碰欧美中文字幕| 在线日韩精品一区二区三区| 精品一区二区成人| av资源在线播放天堂| 91九久| 欧美一区二区在线资源| 婷婷综合五月| 美女淫穴| 极品少妇久久久久| 在线观看不卡一区二区三区| 殴美大黄片| 97久精品| 九9热伊人| 男人天堂网址| 久久精品毛片免费不卡| 日本免费中文一区二区三区四区| 10000部十八禁看电影| 免费视频观看60秒| 中国操逼无码| 婷婷五月影院| 偷拍综合亚洲| 男人的天堂Va| 人妻 丝袜美腿 中文字幕| 日本免费中文一区二区三区四区| 天天综合香 ld视频| 91激情网| 一区二区影视| A片 AV一级在线播放观看免费| 国内精品999| 久久精品一区一起草| 立川理惠被中出无码| 成视频在线观看免费看| 精品176精品2| 超碰成人人人爽人人爽| 一级二级三级黑人无码| 国产精品一区二区三区在线密挑| 中出人妻中文字幕91在线| 国产精品点击进入在线影院高清| 久色网| 歐美性天天| 久久性爱视频免费看| 成人国产精品三级A片| 亚洲大色堂| 亚洲综合欧美| 国产99 中文字幕日韩小视频| 男人天堂综合| 欧美亚洲自拍另类人妻| 日韩天美| 免费视频观看60秒| 亚洲乱码尤物193YW| 亚洲视频一二区| 国产精品久久久| 婷婷色色五月天| 99福利社| 欧美黄片欧美黄片xxx| 日韩午夜国产| 亚洲A曰本VA欧美VA视频| 天天干少妇| 肥佬影院91| 日韩黄色一区二区三区| 999熟女精品| 国产东北女人在线视频| 午夜欧美J进J出白浆流出久久久 | 欧美国产精品久久九九| 亚洲午夜免费狠狠干| 97视频免费| www九九热| 欧美性高潮在线| 欧美日韩中文亚洲v在线综合| 久久妇| 日韩色| 青操影院| 自拍偷拍 日韩无码| 美女网站黄页| 国产三级在线现体验区| 啊啊啊啊二区好大| 成人乱人伦一区二区| 超碰午夜在线| 嫩草美女久久| 久久久久久久国产| 久久五十路熟女人妻| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 婷婷丁香九月| 国产第11页| 黄骗免费| 午夜福利 成人 91| 日韩操人| 香蕉视频欧美一卡二卡| 欧美天天拍| 国产强奸AV在线| 97人肏| 十八禁视频一区二区| 亚洲一区二区专区-国产丝袜精品丝袜-成人AV| 日日干天天干夜夜爽| 色色综合97| 国产精品欧美日韩久久| 热热色综合网| 丁香成人五月天| 91美女网站| 日本青青草在线| 人人潮人人摸| 久草色在线观看| 成人看片网站| 免费A片三p视频| 欧美日韩一干二干| 成人网站 免费观看| 97超碰欧美手机在线| 亚洲国产精品久久久久久久久久| 久久超碰97| 青青草啪啪网| 91啦人妻| 久久精品日韩专区免费观看| 资源在线观一 二| 黄片www视频免费| 欧美综合 站| 免费观看啪视频| 99久久国产精品免费高潮| 少妇69中文| 久久精品国产72国产精品福利| 51一区二区三区| 亚洲午夜免费狠狠干| 啪啪啪东京| 91在线丝袜| 亚洲中文字幕有码视频一区二区三区| 手机看片日韩人妻| 国产精品久久久久9999小说| 亚洲国产一区二区三区在线| 日韩欧美一级特黄大片| 日本精品999| 久久伦理视频久久大香蕉视频| 亚洲天堂99| 探花视频免费观看国产专区| 欧美第二页午夜| 污啪啪啪视频| 亚洲αv一区二区三区| 日本精品一区二区三| 亚洲天堂另类小说男人| 国产做?爰片久久毛片?片美国| 黄片www视频免费| 伊人嫩草| 白丝AV网站| 六六久久日韩不卡| 日本免费专区| 日韩肏逼视频| 久区视频| 蜜桃精品视频一区| 天天日老熟妇| 亚洲一本色道中文无码aV天美| 超碰精品日韩欧美国产| 熟女久久| 嗯嗯啊啊日韩精品| 欧美亚洲影视| www99热| 国产乱码精品一区二区三区四川| 青青草福利视频| av日韩中文字幕| 青青草久久一区网| 你操综合| 婷婷激情四射| 国产精品婬乱一级毛片彝族| 国产午夜福利电影免费在线观看 | 国产蜜臀在线| 伊人精品视频| 91夜色chaopeng| 五月丁香激情综合网| 亚洲一区二区性爱电影| 国模私拍一区二区三区神乳| 91肉片| 亚洲日韩电影| 极品美女嘿咻| 超碰 欧美| 在线情色电影 91大| 一区| 91狠婷| 一区二区三区精品黑丝白丝酒店对鸡 | 欧美1区二区三区公司| a片在线播放| 韩国一级做a久久久久| 四虎国产精品永久地址入口| 国产人伦精品一区二区三区| 免费啪啪一级视频| 国产成年精品高清在线观看91| 成全动漫视频观看免费下载| 欧美91在线| 99人妻| 超碰在线一区二区三区| 99热在线播放| 欧美天天射| 欧美91在线| 国产女大学生AV| dy888午夜老子影视达达兔| 美女诱惑一区| 日本视频在线中文字幕| 人妻少妇久久中文字幕一区二区 麻豆 | 天天日天天搞天天干| 国产午夜精品理论片一二三区区 | 色婷婷五月综合激情中文字幕| 秋霞一级视频在线观看免费| 色色色色电影网| 亚洲激情在线一区二区| 五月天婷婷色色| 九九av| 天美av在线观看| 骚乳在线| 伊人久久大香线综合无码| 久久一二三四不卡 | 欧美精品第四五页中文字幕在线观看| 欧美AB在线观看| 中文字幕少妇色 | 久久久久久久久久久999| 色综合99999| 91黑丝操| 手机在线大香蕉| 张柏芝国产一区在线观看| 天天做天天爱夜夜爽毛片试看| 先锋激情∨在线视频播放| 国产Aα| 亚洲成人综合在线| 免费看美国人人爽,人人操| 国产乱婷婷精品二区三区| 国产亚洲色婷婷99精品91| 欧美97在线观看| 亚州色阁| 97超碰大| a亚洲欧美色欲| 大香蕉专区| 天天干,夜夜爽| 国产亚洲 中文欧美久久| 五月天久久婷婷亚洲| 激情四射婷婷六月天| 殴美色网| 东京热视频网| 欧美日本中字另类在线| 91精品久久久久久77777| 暖暖精品二区三区观看| 熟女欧美日韩综合婷婷| 少妇九九九九| 国产91亚洲精品一区二区三区| 久久国产免费激情视频| 99人人干| 白丝jkav| 亚洲九九视频| 人人做天天爱| 国产亚洲精品第一最新| 久久综合18p| 国偷自 一区二区| 久久久精品网| 日本欧美一区二区三区免费| 91大学精品激情戏| 亚洲第一页欧美| 久久久无码精品人妻二区| 久久精品国产97欧美精品亚洲| 亚洲av性爱电影| 亚欧高清v| 偷拍欧美激情| 我爱操| 国内精品久久人妻性色av| 自拍偷拍2025在线观看| 亚洲精品欧美专业| 国产尤物在线三区| 久久免费99精品久久久久久| 五月综合视频| 亚洲情色一区二区三区| 黑人综合网| 久久婷婷综合国际产色怕| 18一区二区三区| 东京热,男人的天堂| 免费一级黄色录像影片| 激情丁香五月| 97chaopenrihan| 欧美亚洲综合高清在线| 熟女视频久久| 亚洲黄色网址| 96久久久| 五月天婷婷基地| 蜜桃臀久久| 大香蕉乱级| 混色激情av| 男人的天堂视频精品乱在线| 人妻丰满熟妇一区二区三| 欧美色三级片91| 色亚州人久干视频在线观看免费版| 久久精品国产Aⅴ| 婷婷五月丁香五月| 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | 啪啪啪精品| 一区二区三区四区色图| 热G综合热G中文| 国产精品人人爽人人做可爱福利| 精品国产嫩穴视频| 舔足天天操天天射| 人人操人人大香蕉| 亚洲的天堂网| 欧美日韩免费性爱| 免费看污网站| 在线视频97| 亚洲色图大香| 草B在线| 中文字幕免费看大片| 国产精品久久久九九九| 亚洲av国产av综合av卡| 96精品久久久久中文字幕| 97久操| 日韩无码专区| 强乱老妇中文字幕| 日本精品高清一二区一本到| 日本黄页视频在线观看| 伊人网综合在线视频| 色婷婷婷五月天激情四射| 秋霞一集毛片观看| 免费看污网站| 神马九九| 99re3这里只有精品| 超碰97色| 精品无码久久久| 亚洲无码 国产无码| AV天堂电影网| 91视频综合网| 国产av青草| 东北少妇高潮zzzz| 91人妻视频在线| 人妻9117c| 亚洲天堂另类小说男人| 日韩一区二区精彩视频| 樱花草社区www中国| 亚洲97成人在线观看| 精品一久久久| 秋霞免费AV| 果冻传媒A片一二三区| 日本午夜久久电影| 久久久精精精| 日本91白丝| 中文字幕蜜乳av| 一区麻豆 高清中文字幕| 精品日韩人妻精品一二三区| 精品网站99999| 狼狼色丁香久久婷婷综合五月| 久久亚洲天堂| 开心五月深爱五月| 九九九九九九九九九国产精品| 91 手机在线播放 绯色| jizz啪啪| 91精品国久久久久久无码| 国产精品久久成人免费| 久久久久99精品成人片蜜臀| 伊人AAA| 在线观看不卡一区二区三区| 91女优在线观看| 日韩精品一区二区三区色欲| 久久久久久97| 免费网站观看www在线观| 911av网站免费观看| 亚春色色| 91超级碰碰| JIZZJIZZ亚洲女人被躁| 加勒比东京热五月天天堂网| 激情婷婷| 无码直播久久久| 97操综合| 欧洲综合视频| 91三级理论片播放器| 97亚洲中文| 91熟女综合| 激情四射五月天| 一道α片欧美| 日韩精品人妻中文字幕不卡乱码| 国产天美欧美| 把腿张开老子CAO烂你| 麻豆天美一区二区| 免费亚洲国产精品久久一区| 天堂岛av| 人人人人插| 激情综合网亚洲| 职场同事知名国产国产精品久久欧美日韩| 五月丁香| 91人妻精华帖| 热99re69精品8在线播放| 国产熟女二区| 欧美不卡在线美女| 大香蕉一线视频| 亚洲伊人久久综合97| 亚洲校园激情| 做爱福利视频一区二区| 日韩有码一区三区| 亚州免费啪啪视频| 最新亚洲黄色免费电影 | 国产综合网站在线播放| 九九九热| AV中文字幕三四五| 欧美午夜色妇色鬼| 日本片日本片祼观看网站在线看中文版网页在线看| 精品三级在线专区| 欧美黑人日韩少妇色情| 99在线观看无大码| 美女超碰978| 亚洲精品亚洲人成在线麻豆| 国产精品久久久久无码Av网曝门| 久久精品无码专区| 亚洲老司机123专区| 中文字幕日产av人| 91碰碰| 另类天堂| 欧美综合色,www| 色香欲天天天天综合色| 91人妻视频| 五月开心网| AV天堂因数| 91美女高潮| 伊人青青草久久| WWW4虎| 欧美日韩高潮喷水91| 操逼操网| 亚洲制服aⅴ中文字幕| 一级性爱视频免费观看 | 100啪啪视频大全| 免费观看一区| 精品高清牛人盗摄一区二区三区中文字幕A片免费在线观看 | 韩日精品福利视频一区不卡在线免| 日韩女优在线| 91操操| 超碰精品在线| 色综合网1| 无码丰满熟妇一区二区浪潮AV| 日本操逼aaaaa| 老司机午夜精品视频| 青青青青操国内视频在线| 色99久草| rivers-china.com| 久久9999 | 国产综合永久精品日韩鬼片| 一区二区精品日韩欧美在线观看| 1769成人国产精品视频| 蜜臀久久99精品久久久| 蜜臀99久久国产| 久久久久熟女| 熟妇人妻精品一区二区| 中文字幕免费看| 99热99re6国产在线播放| 另类专区加勒比| 二三四区精品| 日韩一级二级三级免费看完整版国语版| 欧美日本天堂| 欧美日韩青操| 1204av韩国| 男人的天堂日本东京热| 天天干人妻| 亚洲网污污污污| 中国熟女91| 亚洲玖玖爱| 午夜啊啊| 九九九国产| 99re9| 搡老熟女免费视频 | 九九亚洲视频| 99热免费| 天堂精品在线| 91色女| 久久偷拍人| 我中文字幕6区| 欧美综合网1| 夜夜精品视频一区二区| 日韩欧美女求操每天更新| 久久久亚洲精品中文字幕人妻| 9丨久久九九九 | 黑人娇小av在线播放| 中文字幕后石码三区四区| 亚洲欧美日韩制服另类| 爽极品影院| 一级特级aaaa毛片免费观看| 欧美一区二区亚洲天堂| 99在线观看| 9l视频自拍9l九色成人| 殴美牲| www.91欧美| 亚欧美无遮挡| 热热色91| 日韩三A大片在线观看| 国模无码一区二区三区在线| 国产精品69人妻无码久久久| 大香网站| 99成人| 97 国产一区| 成人一级二级| 久久久久99999| 日本三级A片网站com| 国产一区二区三区影片| 亚洲丝袜二区| 大香蕉宅男伊人| 欧美瑟综合| 国产高清自拍| 欧美人与性动交a美精品| 另类图片五月天| 精品视频97| 亚洲AV色图一区| 男女性无套 免费九一| 亚洲毛片一级带毛片基地| 精品久热| 九九英色视频| 国产97色在线 | 亚洲| 亚洲一区二区三区春色| 日韩欧美国产一区二区三区四区| 天天爽天天爽| 少妇内射www在线观看视频| 大香蕉中文201| 日本视频在线中文字幕| 国产av美女被艹的乱叫| 人妻出轨一区二区三区| 情色五月天网| 男女啊啊啊| 大香蕉专区| 视频在线观看一二三区| 日韩精品9区| 青娱乐国产剧情av一区| 中文自拍欧美影视| 91偷拍欧美亚洲| 熟妇高潮二区三区| 国产精品久久久久无码Av网曝门 | 97精品国产97久久久久久户外免费| 亚洲天堂日本| 国产91福利小视频在线观看 | 91爆操视频| AV天堂电影网| 无套后入双马尾| 先锋色眉乱伦资源| 亚码激情| 97在线播放| 国产日韩欧美亚洲精品95 | 欧美激情视频一区二区三区不卡| 久久中文字幕人妻熟av女蜜柚| 成人性爱AV在线免费观看| 亚洲午夜AV| 91劲爆| 在线国产福利网址导航| ss久久| rion磁力链接| 亚洲Av无码成人精品国产| 欧美日韩婷婷中文| 亚洲中文字幕熟女| 色婷婷基地| 久久精品99| 亚洲最大成人a毛毛片| 国产性感在线观看| 深夜视频| 9久久精品| 99精品综合久久久久五月天| 免费公开人人操| 精品人妻一区二区免费蜜桃| 91视频在线观看18| 九九热在线精品视频| 精品一区二区2| 久操网视频| 美女毛片999| 成人av在线播放| 夜夜操av亚洲一区二区| 97久久国产精品女不卡| 欧美性爱五月天| 婷婷20月天青娱乐| 免费综合亚洲中文| 十八禁一区二区无码观看| 亚洲国产精品9999在线观看| 无码直播久久久| 亚洲天堂资源在线|