精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Kafka生產環境實戰經驗深度總結,讓你少走彎路

云計算 Kafka
本文結合本人在多個生產項目中使用 Kafka 的經驗,圍繞以下幾個方面展開:消息丟失防范、重復消費控制、性能瓶頸優化、集群運維策略,以及 Topic、分區、副本機制的設計要點。

1.背景

在實際項目中接入 Kafka 已經成為高并發系統的標配。然而,從簡單的“能跑”到“穩定高效地跑”,中間有太多坑值得記錄和總結。本文結合本人在多個生產項目中使用 Kafka 的經驗,圍繞以下幾個方面展開:消息丟失防范、重復消費控制、性能瓶頸優化、集群運維策略,以及 Topic、分區、副本機制的設計要點。先來看看kafka的基礎架構圖,有個整體認識:

圖片圖片

接下我們我們就從生產者、服務端broker、服務端去講述下實戰經驗心得。

2.生產者如何提高吞吐量?

下面來看看生產者發送一條消息到kafka服務端的流程:

圖片圖片

在消息發送的過程中,涉及到了兩個線程——main 線程和 Sender 線程。在 main 線程中創建了一個雙端隊列RecordAccumulator。main 線程將消息發送給 RecordAccumulator,Sender 線程不斷從 RecordAccumulator 中拉取消息發送到 Kafka服務端 Broker

可以適當調整以下四個生產者的參數來提高吞吐量:

參數

說明

batch.size

提交一批數據到緩沖區的最大值,默認 16k。適當增加該值,可以提高吞吐量,但是如果該值設置太大,會導致數據傳輸延遲增加。

linger.ms

如果數據遲遲未達到 batch.size,sender 等待 linger.time之后就會發送數據。單位 ms,默認值是 0ms,表示沒有延遲。生產環境建議該值大小為 5-100ms 之間

buffer.memory

RecordAccumulator 緩沖區總大小,默認 32m。可以適當增加該值提高緩沖區的存儲能力

compression.type

生產者發送的所有數據的壓縮方式。默認是 none,也就是不壓縮。支持壓縮類型:none、gzip、snappy、lz4 和 zstd。

這些參數的應用思想都很好理解,就好比我們現實生活中集散中心大巴車拉人,一次拉一個,有人就走。這種方式效率低下,浪費資源。所以一般都是車到了多等一下,等人數差不多才走,這就是參數batch.size和linger.ms的提醒,buffer.memory其實也好理解,就好比車送到目的地只能容納100個人,你使勁送過去,收不下,只能目的把這個100個人安頓好,才能接著送,所以適當調大,可以增加吞吐量,至于壓縮compression.type就是讓一次可以拉更多的人,就好比讓小孩子和大人用一個座位。

3.如何保證消息不丟失?

消息丟失可能發生在生產者發送消息、broker保存消息、消費者消費消息等環節。

3.1 生產者丟失消息

生產者丟失消息是比較常見的場景,生產者發送消息到kafka,因為網絡抖動最后發現kakfa沒保存,這鍋該誰背?答案是生產者,因為 Kafka Producer 是異步發送消息的,也就是說如果你調用的是 producer.send(msg) 這個 API,那么它通常會立即返回,但此時你不能認為消息發送已成功完成。解決辦法也很簡單:**Producer 永遠要使用帶有回調通知的發送 API,也就是說不要使用 producer.send(msg),而要使用 producer.send(msg, callback)**,通過回調callback才能真正知道消息是否成功發送

設置重試 retries 。這里的 retries 同樣是 Producer 的參數,對應前面提到的 Producer 自動重試。當出現網絡的瞬時抖動時,消息發送可能會失敗,此時配置了 retries > 0 的 Producer 能夠自動重試消息發送,避免消息丟失。

3.2 broker丟失消息

設置 acks = all。acks 是 Producer 的一個參數,代表了你對“已提交”消息的定義。如果設置成 all,表示生產者發送過來的數據,Leader和ISR隊列里面的所有節點收到數據后才應答。

參數

說明

acks

0:生產者發送過來的數據,不需要等數據落盤應答。
1:生產者發送過來的數據,Leader 收到數據后應答。
-1(all):生產者發送過來的數據,Leader+和 isr 隊列里面的所有節點收到數據后應答。默認值是-1,-1 和all 是等價的。

設置 unclean.leader.election.enable = false。這是 Broker 端的參數,它控制的是哪些 Broker 有資格競選分區的 Leader。如果一個 Broker 落后原先的 Leader 太多,那么它一旦成為新的 Leader,必然會造成消息的丟失。故一般都要將該參數設置成 false,即不允許這種情況的發生。

設置 replication.factor >= 3。這也是 Broker 端的參數。其實這里想表述的是,最好將消息多保存幾份,畢竟目前防止消息丟失的主要機制就是冗余。

設置 min.insync.replicas > 1。這依然是 Broker 端參數,控制的是消息至少要被寫入到多少個副本才算是“已提交”。設置成大于 1 可以提升消息持久性。在實際環境中千萬不要使用默認值 1。

確保 replication.factor > min.insync.replicas。如果兩者相等,那么只要有一個副本掛機,整個分區就無法正常工作了。我們不僅要改善消息的持久性,防止數據丟失,還要在不降低可用性的基礎上完成。推薦設置成 replication.factor = min.insync.replicas + 1

3.3 消費者丟失消息

Consumer 程序有個“位移”的概念,表示的是這個 Consumer 當前消費到的 Topic 分區的位置。如果我們一次消費offset為0-9的10條消息,拉取到消息之后就自動提交了位移,但是消費到位移5的時候報錯了,那么位移5-9的消息就被丟失了。

解決辦法也很簡單就是確保消息消費完成再提交。Consumer 端有個參數 enable.auto.commit,最好把它設置成 false關閉自動提交,并采用手動提交位移的方式。如果啟用了自動提交,Consumer 端還有個參數就派上用場了:auto.commit.interval.ms。它的默認值是 5 秒,表明 Kafka 每 5 秒會為你自動提交一次位移。

手動提交位移是保證消費者消息消息過程中不丟失消息的核心所在,手動提交分為同步和異步,同步提交會使消費者處于阻塞狀態,直到遠端的 Broker 返回提交結果。而異步提交它會立即返回,不會阻塞,因此不會影響 Consumer 應用的 TPS。但是異步條件有一個缺點就是發生了異常我們無法立刻感知到并相應邏輯處理,所以代碼里面的提交位移邏輯一般是:同步+異步

try {
        while (true) {
            ConsumerRecords<String, String> records = kafkaConsumer.poll(Duration.ofSeconds(1));
            process(records); // 處理消息
            kafkaConsumer.commitAsync(); // 使用異步提交規避阻塞
        }
    } catch (Exception e) {
        handle(e); // 處理異常
    } finally {
        try {
            kafkaConsumer.commitSync(); // 最后一次提交使用同步阻塞式提交
        } finally {
            kafkaConsumer.close();
        }
    }

這段代碼同時使用了 commitSync() 和 commitAsync()。對于常規性、階段性的手動提交,我們調用 commitAsync() 避免程序阻塞,而在 Consumer 要關閉前,我們調用 commitSync() 方法執行同步阻塞式的位移提交,以確保 Consumer 關閉前能夠保存正確的位移數據。將兩者結合后,我們既實現了異步無阻塞式的位移管理,也確保了 Consumer 位移的正確性,所以,如果你需要自行編寫代碼開發一套 Kafka Consumer 應用,那么我推薦你使用上面的代碼范例來實現手動的位移提交。

關于提交位移有一個可能發生的異常:CommitFailedException,顧名思義就是 Consumer 客戶端在提交位移時出現了錯誤或異常,而且還是那種不可恢復的嚴重異常。這是因為在拉取到消息消費完之后提交位移這期間,消費者組發生了重平衡。關于什么是重平衡可以看后續總結講述。

4.如何保證消息不會重復消費?

在生產者端可能由于開啟了重試機制導致同一條消息被發送了兩次,這時候可以讓生產者開啟冪等性配置參數:enable.idempotence 默認為true, 即開啟的。

消費者端就是要保證實際消費消息的位移和提交的位移一致,使用手工同步位移。當然我們也可以在消費消息的代碼邏輯保證消費的冪等性:使用唯一索引或者分布式鎖都行

5.如何解決消息積壓問題

消息積壓會導致很多問題,?如磁盤被打滿、?產端發消息導致kafka性能過慢,最后導致出現服務雪崩不可用,解決方案如下:

  • 如果是Kafka消費能力不足,則可以考慮增加Topic的分區數,并且同時提升消費組的消費者數量,消費者數 = 分區數。因為主題的一個分區只能被消費者組中一個消費者消費,假如我們消費者組里有3個消費者,但是主題就一個分區,這就白白空著兩個消費者無所事事。如果已經是多個消費者對應多個分區了,還是消費比較慢,就說明是消息消息的代碼邏輯過重處理過慢,可以引入多線程異步操作,但這時候需要自己控制代碼邏輯來保證消費的順序性,因為一個分區內的消息是有序的,被一個消費者順序消費,但是當消費者開啟多線程處理之后就不能保證順序消費了。
  • 如果是下游的數據處理不及時:提高每批次拉取的數量。批次拉取數據過少(拉取數據/處理時間 < 生產速度),使處理的數據小于生產的數據,也會造成數據積壓。比如說可以從一次最多拉取500條,調整為一次最多拉取1000條。簡單來說就是在消費能力跟得上的同時,盡量保證消費速度>生產速度,這樣就不會堆積了。

6.如何保證消息的有序性。

生產者:在發送時將ack不能設置0,關閉重試,使?同步發送,等到發送成功再發送下?條。確保消息是順序發送的。

消費者:消息是發送到?個分區中,只能有?個消費組的消費者來接收消息。

因此,kafka的順序消費會犧牲掉性能。

7.什么是重平衡?

Rebalance 就是讓一個 Consumer Group 下所有的 Consumer 實例就如何消費訂閱主題的所有分區達成共識的過程。在 Rebalance 過程中,所有 Consumer 實例共同參與,在協調者組件的幫助下,完成訂閱主題分區的分配。但是,在整個過程中,所有實例都不能消費任何消息,因此它對 Consumer 的 TPS 影響很大。重平衡觸發的場景:

  • 消費者組訂閱的主題的分區數增加了,注意主題分區數只能增加,不能減少
  • 消費者組訂閱的主題數有變化,可能變多了也可能變少了。
  • 消費者組成員有變化,可能變多了也可能變少了。

前兩個訂閱的分區數增加還是主題數變化,都是一個主動發起Rebalance,我們是能提前感知到的。Consumer 實例增加的情況很好理解,當我們啟動一個配置有相同 group.id 值的 Consumer 程序時,實際上就向這個 Group 添加了一個新的 Consumer 實例。此時,Coordinator 會接納這個新實例,將其加入到組中,并重新分配分區。通常來說,增加 Consumer 實例的操作都是計劃內的,可能是出于增加 TPS 或提高伸縮性的需要。但是對于Consumer 實例減少,大部分不是人為操作下線的,更多情況是Consumer 實例會被 Coordinator 錯誤地認為“已停止”從而被“踢出”Group。如果是這個原因導致的 Rebalance,這種情況就得引起我們重視了。

Coordinator 會在什么情況下認為某個 Consumer 實例已掛從而要退組呢?

當 Consumer Group 完成 Rebalance 之后,每個 Consumer 實例都會定期地向 Coordinator 發送心跳請求,表明它還存活著。如果某個 Consumer 實例不能及時地發送這些心跳請求,Coordinator 就會認為該 Consumer 已經“死”了,從而將其從 Group 中移除,然后開啟新一輪 Rebalance。Consumer 端有個參數,叫 session.timeout.ms,就是被用來表征此事的。該參數的默認值是 145秒,即如果 Coordinator 在 45 秒之內沒有收到 Group 下某 Consumer 實例的心跳,它就會認為這個 Consumer 實例已經掛了。可以這么說,session.timout.ms 決定了 Consumer 存活性的時間間隔。

Consumer 端還有一個參數,用于控制 Consumer 實際消費能力對 Rebalance 的影響,即 max.poll.interval.ms 參數。它限定了 Consumer 端應用程序兩次調用 poll 方法的最大時間間隔。它的默認值是 5 分鐘,表示你的 Consumer 程序如果在 5 分鐘之內無法消費完 poll 方法返回的消息,那么 Consumer 會主動發起“離開組”的請求,Coordinator 也會開啟新一輪 Rebalance。

8.kafka作為消息隊列為什么發送和消費消息這么快?

  • 消息分區:不受單臺服務器的限制,可以不受限的處理更多的數據
  • 順序讀寫:磁盤順序讀寫,提升讀寫效率
  • 頁緩存:把磁盤中的數據緩存到內存中,把對磁盤的訪問變為對內存的訪問
  • 零拷貝:減少上下文切換及數據拷貝
  • 消息壓縮:減少磁盤IO和網絡IO
  • 分批發送:將消息打包批量發送,減少網絡開銷
責任編輯:武曉燕 來源: Shepherd進階筆記
相關推薦

2011-04-29 10:31:36

數據中心虛擬化

2016-09-30 15:55:54

DataMining大數據時代

2010-03-22 11:57:23

云計算

2010-06-13 10:50:05

職場辛酸教訓

2009-02-02 13:54:49

忠告成長涉世之初

2009-05-08 09:23:52

網管故障病毒

2020-05-08 15:06:58

數據科學模型深度學習

2022-01-04 08:21:50

經驗職場工作

2018-05-29 22:24:22

程序員開發學習

2017-01-05 16:29:00

2018-07-04 13:53:08

2019-11-13 10:16:14

大數據架構數據科學

2011-07-07 10:49:41

JavaScript

2025-05-30 08:09:28

2015-07-02 10:50:55

SDN

2024-11-27 08:28:37

2019-05-06 13:42:13

大數據分布式架構

2013-10-23 13:33:29

微軟Surface庫克

2010-09-14 10:55:14

DIV CSS網頁制作
點贊
收藏

51CTO技術棧公眾號

欧美精品久久久久久久久25p| 日韩精品在线观| 久久综合伊人77777麻豆| 成年人视频在线免费看| 秋霞影院一区| 精品福利一区二区| 亚洲国产高清国产精品| 国产av精国产传媒| 久久高清国产| 欧美成人激情图片网| 久久久久麻豆v国产精华液好用吗| 欧美男体视频| 亚洲国产cao| 亚洲一区二区三区精品动漫| 好吊色一区二区| 蜜桃久久久久久久| 高清欧美性猛交xxxx| 日韩av片在线免费观看| 国产精品99久久免费观看| 欧美日韩中文一区| 青青草国产精品视频| 秋霞成人影院| 久久尤物电影视频在线观看| 亚洲综合色av| 怡红院男人天堂| 亚洲一区日韩在线| 久久久久久久色| 卡通动漫亚洲综合| jiujiure精品视频播放| 亚洲国产精品成人va在线观看| 美女在线视频一区二区| 欧美男女交配| 福利视频一区二区| 国产www免费| av免费网站在线观看| 国产精品免费av| 日本午夜精品一区二区三区| 天堂av2024| 粉嫩av一区二区三区| 91网站在线免费观看| 在线免费一级片| 日韩av电影免费观看高清完整版| 668精品在线视频| 国产精品成人aaaa在线| 欧美日韩三级电影在线| 美女视频久久黄| 任我爽在线视频| 久久大综合网| 精品国产一区二区三区久久| 黄色激情小视频| 日本一区二区免费高清| 在线观看欧美成人| 精品伦精品一区二区三区视频密桃| 久久最新网址| 在线视频国产日韩| 欧美另类69xxxx| 日韩精品免费一区二区三区| 在线观看成人黄色| 免费精品在线视频| 91成人网在线观看| 久久99视频免费| 国产一级视频在线观看| 亚洲国产欧美国产综合一区| 97久久精品人人澡人人爽缅北| 国产在线观看你懂的| 亚洲精品1234| 日本欧美中文字幕| 五月婷婷丁香在线| 激情图区综合网| 成人18视频| 欧美自拍偷拍第一页| 97精品国产露脸对白| 欧美精品久久| 一区二区高清不卡| 一个色妞综合视频在线观看| 91九色丨porny丨国产jk| 丝袜老师在线| 欧美三级视频在线播放| 国产永久免费网站| 7777精品| 亚洲区免费影片| 欧美大片xxxx| 中文一区二区| 国产欧美在线播放| 国产综合无码一区二区色蜜蜜| 99re6这里只有精品视频在线观看| 欧美日韩国产精品一区二区| 青青影院在线观看| 精品福利免费观看| 国产三级生活片| 久久香蕉网站| 久久精品国产亚洲| 日韩色图在线观看| 韩国一区二区视频| 麻豆av一区二区三区| 国产一二三区在线观看| 日韩欧美国产骚| 日本一二三四区视频| 日韩超碰人人爽人人做人人添| 色爱精品视频一区| 成年人午夜视频| 激情综合色综合久久| 久久久久久久久一区二区| 麻豆传媒视频在线观看| 欧美日韩午夜视频在线观看| 一区二区久久精品| 精品一区亚洲| 色与欲影视天天看综合网| 波多野结衣 久久| 国产成人精品免费| 手机成人在线| 自拍偷拍亚洲视频| 亚洲精品一区二区在线观看| 亚洲综合久久av一区二区三区| 99在线精品视频在线观看| 91免费国产视频| 超碰国产在线| 黑人极品videos精品欧美裸| gogo亚洲国模私拍人体| 日韩一级毛片| 日韩免费观看视频| 天堂av中文字幕| 亚洲午夜国产一区99re久久| 天天操,天天操| 精品99久久| 欧美亚洲激情在线| 国精品人妻无码一区二区三区喝尿 | 久久免费视频网站| 国产视频一区二区三区四区五区| 国产偷国产偷精品高清尤物| 三上悠亚久久精品| 国产精品对白| 久久久久久久久久久国产| 91女人18毛片水多国产| 国产精品天天看| 日韩福利视频在线| 国产伦精品一区二区三区视频| 韩国v欧美v日本v亚洲| а√天堂资源在线| 樱桃国产成人精品视频| 熟妇无码乱子成人精品| 亚洲91视频| 成人国产精品一区二区| 337p日本欧洲亚洲大胆鲁鲁| 在线中文字幕不卡| 这里只有久久精品| 视频一区二区三区中文字幕| 就去色蜜桃综合| xxxxxx欧美| 亚洲欧美日韩中文在线| 波多野结衣视频网址| 久久久高清一区二区三区| 色欲av无码一区二区人妻| 色婷婷狠狠五月综合天色拍| 51久久精品夜色国产麻豆| 婷婷五月综合久久中文字幕| 亚洲国产日韩一区二区| 在线观看国产三级| 久久久亚洲一区| 日韩不卡av| 国产成人亚洲一区二区三区| 久久国产一区二区三区| www.97av| 精品动漫一区二区| 少妇精品无码一区二区免费视频| 日本欧美韩国一区三区| 国产精品无码乱伦| 97se亚洲| 国产成人一区三区| 国产原创视频在线观看| 亚洲第一视频网站| 免费观看日批视频| 亚洲三级在线免费观看| 久久久久国产免费| 丝袜美腿亚洲一区二区图片| 亚洲欧洲国产精品久久| 久久久国产精品入口麻豆| 久久久久久久一区二区三区| 青青草在线免费视频| 欧美日韩一区在线| 久久久久97国产| 久久亚洲一级片| 欧美激情第3页| 亚洲天堂偷拍| 日韩少妇中文字幕| 色妞ww精品视频7777| 欧美一乱一性一交一视频| sese一区| 亚洲高清在线观看| 一区二区三区播放| 亚洲国产精品久久不卡毛片 | 国产亚洲电影| 亚洲精品欧美日韩| 国产精品高清乱码在线观看| 久久国产精品影视| 久久经典视频| 欧美xfplay| 中文字幕一区二区久久人妻| 亚洲午夜电影在线| 肉色超薄丝袜脚交69xx图片| 91在线观看下载| 国产精品欧美性爱| 蜜桃视频免费观看一区| 六月丁香婷婷激情| 欧美在线资源| 亚洲一区二区不卡视频| 欧美性生活一级片| 91国产在线免费观看| 精品视频在线一区二区在线| 国产+成+人+亚洲欧洲| 国产原厂视频在线观看| 一区二区三区精品99久久| 东京干手机福利视频| 欧美电影影音先锋| 国语对白做受69按摩| 亚洲成人免费视频| 欧美日韩人妻精品一区二区三区| 欧美国产精品一区| 中文字幕日韩三级片| 国产91精品一区二区| 天天色天天综合网| 蜜臀av一区二区在线免费观看| 国产免费黄色av| 伊人久久久大香线蕉综合直播 | 欧美军同video69gay| 99re这里只有精品在线| 香蕉久久一区二区不卡无毒影院 | 日本精品一二三| 精品一区二区三区免费毛片爱 | xxxx.国产| 亚洲自拍欧美精品| 日本天堂中文字幕| 亚洲色图视频免费播放| 三级黄色录像视频| 国产精品日产欧美久久久久| 免费一级做a爰片久久毛片潮| av亚洲精华国产精华| 中国免费黄色片| 成人免费高清视频在线观看| 性一交一黄一片| 国产大陆a不卡| 久久黄色一级视频| 粉嫩一区二区三区性色av| 无码人妻久久一区二区三区蜜桃| 国产乱码字幕精品高清av| 久久精品一二三四| 成人一二三区视频| 国产精品入口麻豆| 99精品偷自拍| 日韩中文字幕电影| 中文字幕欧美国产| 国产白丝一区二区三区| 中文字幕一区二区三中文字幕| 老司机深夜福利网站| 国产精品福利一区二区| 糖心vlog免费在线观看| 一区二区三区中文字幕电影| 久久精品国产av一区二区三区| 亚洲成av人片在线观看无码| 日韩免费一级片| 欧美日韩亚洲视频| 97人妻一区二区精品视频| 欧美性生活影院| 国产精品国产av| 日韩欧美www| 亚洲欧美日韩综合在线| 亚洲国产福利在线| 国产中文在线视频| 日韩在线观看免费高清| 欧美性爽视频| 欧美中文在线观看国产| 国产成人a视频高清在线观看| 成人午夜激情网| 国产成人一二| 日韩亚洲视频在线| 午夜久久福利| 日韩精品一区中文字幕| 激情久久五月天| 天天躁日日躁狠狠躁av麻豆男男| 久久久久久久久99精品| 日本爱爱小视频| 五月激情六月综合| 岳乳丰满一区二区三区| 亚洲大胆人体在线| 91sp网站在线观看入口| 久久久久国产精品免费| 日本精品在线一区| 丁香婷婷久久久综合精品国产| 亚洲素人在线| 欧洲精品视频在线| 久热精品在线| 成人啪啪18免费游戏链接| 国产日韩av一区二区| 久久久久亚洲av无码专区| 在线视频你懂得一区| www.黄色小说.com| 亚洲性视频网址| segui88久久综合| 91精品美女在线| 免费看成人哺乳视频网站| 亚洲高潮无码久久| 美女爽到高潮91| 男人的天堂影院| 中文字幕一区二区三区在线观看| 久久久久久91亚洲精品中文字幕| 91麻豆精品国产91久久久使用方法| 神马电影在线观看| 欧美黄色小视频| 青青草国产一区二区三区| 免费看国产精品一二区视频| 欧美日韩国产高清| 亚洲免费黄色录像| 国产亚洲综合在线| 波多野结衣国产| 精品精品国产高清一毛片一天堂| 日p在线观看| 国产精品盗摄久久久| 欧美偷窥清纯综合图区| 韩日视频在线观看| 国产精品88888| 欧美日韩午夜视频| 欧美精品一二三| 色的视频在线免费看| 国产精品久久久久久久久久99| 亚洲精品小区久久久久久| 人人妻人人做人人爽| 国产精品一区二区x88av| 中文字幕美女视频| 欧美日韩高清一区| 91精品国产91久久久久游泳池| 日本亚洲欧美三级| 综合亚洲色图| 欧美成人精品欧美一级乱| 91视频com| 超碰超碰超碰超碰| 精品在线小视频| 成人欧美大片| 青青草国产精品| 日韩综合在线视频| 日韩中文字幕有码| 欧美优质美女网站| 最新国产在线观看| 国产欧美精品va在线观看| 日韩成人精品一区二区| xxx国产在线观看| 成人免费一区二区三区视频| 中文字幕欧美人妻精品| 日韩在线免费观看视频| 欧美日韩伦理一区二区| 一级做a爰片久久| 韩国成人在线视频| 麻豆changesxxx国产| 精品国产sm最大网站免费看| 国产高清在线a视频大全| 国产在线播放一区二区| 国产麻豆综合| 天天操天天干天天操天天干| 欧美日韩你懂得| av在线麻豆| 精品蜜桃一区二区三区| 久久国产日韩| 91香蕉视频污在线观看| 日韩一级完整毛片| 九九精品调教| 麻豆亚洲一区| 另类中文字幕网| 欧美亚洲日本在线| 日韩电影网在线| 欧美特黄色片| r级无码视频在线观看| 久久精品日产第一区二区三区高清版| 中文字幕在线观看第二页| 超碰日本道色综合久久综合| 美女视频亚洲色图| 国产成人手机视频| 亚洲美女在线国产| 水莓100在线视频| 91久久国产综合久久91精品网站| 国产精品videosex极品| 女尊高h男高潮呻吟| 欧美美女直播网站| 99热99re6国产在线播放| 日韩.欧美.亚洲| 成人美女在线观看| 中文字幕第2页| 97国产精品人人爽人人做| 日韩视频在线观看| 国产免费一区二区三区最新6| 欧美丝袜第三区| zzzwww在线看片免费| 一区二区三区精品国产| 99精品视频中文字幕| 国产又黄又爽视频| 欧美影院在线播放| 亚洲色图插插| 无码人妻丰满熟妇啪啪欧美| 精品成人一区二区| 日日夜夜亚洲精品| 红桃av在线播放| 亚洲国产视频在线|