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

Apache Kafka快速入門指南

大數(shù)據(jù) Kafka
Kafka是基于發(fā)布訂閱的消息系統(tǒng)。最初起源于LinkedIn,于2011年成為開源Apache項目,然后于2012年成為Apache頂級項目。Kafka用Scala和Java編寫,因其分布式可擴展架構(gòu)及可持久化、高吞吐率特征而被廣泛使用。

 簡介

Kafka是基于發(fā)布訂閱的消息系統(tǒng)。最初起源于LinkedIn,于2011年成為開源Apache項目,然后于2012年成為Apache頂級項目。Kafka用Scala和Java編寫,因其分布式可擴展架構(gòu)及可持久化、高吞吐率特征而被廣泛使用。

[[282225]]

消息隊列

通常在項目中,我們會因為如下需求而引入消息隊列模塊:

1.解耦:消息系統(tǒng)相當于在處理過程中間插入了一個隱含的、基于數(shù)據(jù)的接口層。無需預先定義不同的接口地址和請求應答規(guī)范,這允許數(shù)據(jù)上下游獨立決定雙方的處理過程,只需要約定數(shù)據(jù)格式即可任意擴展服務類型和業(yè)務需求。

2.緩沖:消息系統(tǒng)作為一個緩沖池,應對常見的訪問量不均衡情形。比如特殊節(jié)假日的流量劇增和每日不同時段的訪問量差異。以及處理不同數(shù)據(jù)類型所需的不同實時性。使整個業(yè)務處理架構(gòu)以較低成本獲得一定靈活性。

3. 異步:很多時候,用戶不想也不需要立即處理消息。消息隊列提供了異步處理機制,允許用戶把一個消息放入隊列,但并不立即處理它。想向隊列中放入多少消息就放多少,然后在需要的時候再去處理它們。

Kafka的特點

作為一種分布式的,基于發(fā)布/訂閱的消息系統(tǒng)。Kafka的主要設計目標如下:

1.以時間復雜度為O(1)的方式提供消息持久化能力,即使對TB級以上數(shù)據(jù)也能保證常數(shù)時間復雜度的訪問性能。

2.高吞吐率。即使在非常廉價的商用機器上也能做到單機支持每秒100K條以上消息的傳輸。

3.支持Kafka Server間的消息分區(qū),及分布式消費,同時保證每個Partition內(nèi)的消息順序傳輸。

4.同時支持離線數(shù)據(jù)處理和實時數(shù)據(jù)處理。

5.支持在線水平擴展。

Kafka體系架構(gòu)

如上圖所示,一個典型的Kafka體系架構(gòu)包括若干Producer(可以是服務器日志,業(yè) 務數(shù)據(jù),頁面前端產(chǎn)生的page view等等),若干Broker(Kafka支持水平擴展,一般Broker數(shù)量越多,集群吞吐率越高),若干Consumer (Group),以及一個Zookeeper集群。Kafka通過Zookeeper管理集群配置,選舉leader,以及在Consumer Group發(fā)生變化時進行rebalance。Producer使用push模式將消息發(fā)布到Broker,Consumer使用pull模式從Broker訂閱并消費消息。

名詞解釋:

Topic & Partition

一個topic可以認為一個一類消息,每個topic將被分成多個partition,每個partition在存儲層面是append log文件。任何發(fā)布到此partition的消息都會被追加到log文件的尾部,每條消息在文件中的位置稱為offset(偏移量),offset為一個long型的數(shù)字,它唯一標記一條消息。每條消息都被append到partition中,順序?qū)懘疟P因此效率非常高。這是Kafka高吞吐率的重要基礎。

Producer發(fā)送消息到Broker時,會根據(jù)Paritition機制選擇將其存儲到哪一個Partition。如果Partition機制設置合理,所有消息可以均勻分布到不同的Partition里,這樣就實現(xiàn)了負載均衡。如果一個Topic對應一個文件,那這個文件所在的機器I/O將會成為這個Topic的性能瓶頸,而有了Partition后,不同的消息可以并行寫入不同Broker的不同Partition里,極大的提高了吞吐率。可以通過配置項num.partitions來指定新建Topic的默認Partition數(shù)量,也可在創(chuàng)建Topic時通過參數(shù)指定,同時也可以在Topic創(chuàng)建之后通過Kafka提供的工具修改。

Kafka的復制機制

Kafka 中的每個主題分區(qū)都被復制了 n 次,其中的 n 是主題的復制因子(replication factor)。這允許 Kafka 在集群服務器發(fā)生故障時自動切換到這些副本,以便在出現(xiàn)故障時消息仍然可用。Kafka 的復制是以分區(qū)為粒度的,分區(qū)的預寫日志被復制到 n 個服務器。 在 n 個副本中,一個副本作為 leader,其他副本成為 followers。顧名思義,producer 只能往 leader 分區(qū)上寫數(shù)據(jù)(讀也只能從 leader 分區(qū)上進行),followers 只按順序從 leader 上復制日志。

日志復制算法(log replication algorithm)必須提供的基本保證是,如果它告訴客戶端消息已被提交,而當前 leader 出現(xiàn)故障,新選出的 leader 也必須具有該消息。在出現(xiàn)故障時,Kafka 會從失去 leader 的 ISR 里面選擇一個 follower 作為這個分區(qū)新的 leader ;換句話說,是因為這個 follower 是跟上 leader 寫進度的。

每個分區(qū)的 leader 會維護一個 ISR。當 producer 往 Broker 發(fā)送消息,消息先寫入到對應 leader 分區(qū)上,然后復制到這個分區(qū)的所有副本中。只有將消息成功復制到所有同步副本(ISR)后,這條消息才算被提交。由于消息復制延遲受到最慢同步副本的限制,因此快速檢測慢副本并將其從 ISR 中刪除非常重要。 Kafka 復制協(xié)議的細節(jié)會有些細微差別。

Kafka的同步機制

Kafka不是完全同步,也不是完全異步,而是一種ISR(In-Sync Replicas)機制:

1. leader會維護一個與其基本保持同步的Replica列表,該列表稱為ISR,每個Partition都會有一個ISR,而且是由leader動態(tài)維護 。

2. 如果一個follower比一個leader落后太多,或者超過一定時間未發(fā)起數(shù)據(jù)復制請求,則leader將其從ISR中移除

3. 當ISR中所有Replica都向Leader發(fā)送ACK時,leader才commit,這時候producer才能認為一個請求中的消息都commit了。

Kafka提供了數(shù)據(jù)復制算法保證,如果leader發(fā)生故障或掛掉,一個新leader被選舉并被接受客戶端的消息成功寫入。Kafka確保從同步副本列表中選舉一個副本為leader,或者說follower追趕leader數(shù)據(jù)。leader負責維護和跟蹤ISR中所有follower滯后的狀態(tài)。當Producer發(fā)送一條消息到Broker后,leader寫入消息并復制到所有follower。消息提交之后才被成功復制到所有的同步副本。消息復制延遲受最慢的follower限制,重要的是快速檢測慢副本,如果follower“落后”太多或者失效,leader將會把它從ISR中刪除。

消息傳輸保障

前面已經(jīng)介紹了Kafka如何進行有效的存儲,以及了解了Producer和Consumer如何工作。接下來討論的是Kafka如何確保消息在Producer和Consumer之間傳輸。有以下三種可能的傳輸保障(delivery guarantee):

  • At most once: 消息可能會丟,但絕不會重復傳輸
  • At least once:消息絕不會丟,但可能會重復傳輸
  • Exactly once:每條消息肯定會被傳輸一次且僅傳輸一次

Kafka的消息傳輸保障機制非常直觀。當Producer向Broker發(fā)送消息時,一旦這條消息被commit,由于副本機制(replication)的存在,它就不會丟失。但是如果Producer發(fā)送數(shù)據(jù)給Broker后,遇到的網(wǎng)絡問題而造成通信中斷,那producer就無法判斷該條消息是否已經(jīng)提交(commit)。雖然Kafka無法確定網(wǎng)絡故障期間發(fā)生了什么,但是Producer可以retry多次,確保消息已經(jīng)正確傳輸?shù)紹roker中,所以目前Kafka實現(xiàn)的是At least once。

Consumer從Broker中讀取消息后,可以選擇Commit,該操作會在Zookeeper中存下該Consumer在該Partition下讀取的消息的offset。該Consumer下一次再讀該Partition時會從下一條開始讀取。如未commit,下一次讀取的開始位置會跟上一次commit之后的開始位置相同。當然也可以將consumer設置為autocommit,即Consumer一旦讀取到數(shù)據(jù)立即自動commit。如果只討論這一讀取消息的過程,那Kafka是確保了exactly once, 但是如果由于前面Producer與Broker之間的某種原因?qū)е孪⒌闹貜停敲催@里就是At least once。

考慮這樣一種情況,當Consumer讀完消息之后先commit再處理消息,在這種模式下,如果consumer在commit后還沒來得及處理消息就crash了,下次重新開始工作后就無法讀到剛剛已提交而未處理的消息,這就對應于At most once了。讀完消息先處理再commit。這種模式下,如果處理完了消息在commit之前Consumer crash了,下次重新開始工作時還會處理剛剛未commit的消息,實際上該消息已經(jīng)被處理過了,這就對應于at least once。

要做到exactly once就需要引入消息去重機制。Kafka文檔中提及GUID(Globally Unique Identifier)的概念,通過客戶端生成算法得到每個消息的unique id,同時可映射至broker上存儲的地址,即通過GUID便可查詢提取消息內(nèi)容,也便于發(fā)送方的冪等性保證,需要在broker上提供此去重處理模塊,目前版本尚不支持。

針對GUID, 如果從客戶端的角度去重,那么需要引入集中式緩存,必然會增加依賴復雜度,另外緩存的大小難以界定。不只是Kafka, 類似RabbitMQ以及RocketMQ這類商業(yè)級中間件也只保障at least once, 且也無法從自身去進行消息去重。所以我們建議業(yè)務方根據(jù)自身的業(yè)務特點進行去重,比如業(yè)務消息本身具備冪等性,或者借助Redis等其他產(chǎn)品進行去重處理。

Kafka作為消息隊列:

傳統(tǒng)的消息有兩種模式:隊列和發(fā)布訂閱。 在隊列模式中,消費者池從服務器讀取消息(每個消息只被其中一個讀取); 發(fā)布訂閱模式:消息廣播給所有的消費者。這兩種模式都有優(yōu)缺點,隊列的優(yōu)點是允許多個消費者瓜分處理數(shù)據(jù),這樣可以擴展處理。但是,隊列不像多個訂閱者,一旦消息者進程讀取后故障了,那么消息就丟了。而發(fā)布和訂閱允許你廣播數(shù)據(jù)到多個消費者,由于每個訂閱者都訂閱了消息,所以沒辦法縮放處理。

Kafka中的Consumer Group有兩種形式:

a、隊列:允許同名的消費者組成員共同處理。

b、發(fā)布訂閱:廣播消息給多個消費者組。

Kafka的每個topic都具有這兩種模式。

傳統(tǒng)的消息系統(tǒng)按順序保存數(shù)據(jù),如果多個消費者從隊列消費,則服務器按存儲的順序發(fā)送消息,但是,盡管服務器按順序發(fā)送,多個并行請求將會是異步的,因此消息可能亂序到達。這意味著只要消息存在并行消費的情況,順序就無法保證。消息系統(tǒng)常常通過僅設1個消費者來解決這個問題,但是這意味著沒用到并行處理。

Kafka有比傳統(tǒng)的消息系統(tǒng)更強的順序保證。通過并行Topic的Parition,Kafka提供了順序保證和負載均衡。每個Partition僅由同一個消費者組中的一個消費者消費到。并確保消費者是該Partition的唯一消費者,并按順序消費數(shù)據(jù)。每個topic有多個分區(qū),則需要對多個消費者做負載均衡,但請注意,相同的消費者組中不能有比分區(qū)更多的消費者,否則多出的消費者一直處于空等待,不會收到消息。

Kafka作為存儲系統(tǒng)

所有發(fā)布消息到消息隊列和消費分離的系統(tǒng),實際上都充當了一個臨時存儲系統(tǒng)。Kafka還是一個非常高性能的存儲系統(tǒng)。寫入到Kafka的數(shù)據(jù)將寫到磁盤并復制到集群中保證容錯性。并允許生產(chǎn)者等待消息應答,直到消息完全寫入。Kafka的存儲結(jié)構(gòu)保證無論服務器上有50KB或50TB數(shù)據(jù),執(zhí)行效率是相似的,因此可達到水平擴展的目標。還可以認為Kafka是一種專用于高性能,低延遲,提交日志存儲,復制,和傳播特殊用途的分布式文件系統(tǒng)。

Kafka流處理

Kafka的更高目標是實時流處理。在Kafka中,流處理持續(xù)獲取輸入topic的數(shù)據(jù),進行處理加工,然后寫入輸出topic。例如,一個零售APP,接收銷售和出貨的輸入流,統(tǒng)計數(shù)量或調(diào)整價格后輸出。

簡單的需求可以直接使用Producer和Consumer API進行處理。對于復雜的轉(zhuǎn)換,Kafka提供了更強大的Streams API,可構(gòu)建聚合計算或連接流到一起的復雜應用程序。

綜上所述,Kafka 的設計可以幫助我們解決很多架構(gòu)上的問題。但是想要用好 Kafka 的高性能、低耦合、高可靠性等特性,我們需要非常了解 Kafka,以及我們自身的業(yè)務需求,綜合考慮應用場景。

【本文是51CTO專欄機構(gòu)“AiChinaTech”的原創(chuàng)文章,微信公眾號( id: tech-AI)”】

戳這里,看該作者更多好文

 

責任編輯:華軒 來源: 51CTO
相關推薦

2011-03-08 16:50:35

2023-09-12 10:55:35

Kafka數(shù)據(jù)庫服務器

2025-10-09 07:30:00

Kafka開發(fā)代碼

2021-03-02 06:32:03

Ansible系統(tǒng)運維

2025-02-28 08:42:53

SpringNetflixHystrix

2020-11-25 19:05:50

云計算SaaS公有云

2024-03-08 22:39:55

GolangApacheKafka

2021-03-01 13:00:21

Ansible系統(tǒng)運維

2024-08-27 09:09:49

Web系統(tǒng)JSP

2023-07-07 08:00:00

KafkaSpringBoo

2010-12-23 13:45:23

Office 2010批量激活

2020-11-13 05:49:09

物聯(lián)網(wǎng)城域網(wǎng)IOT

2013-08-30 09:41:46

JavaApache CameApache

2022-02-19 21:22:23

Kafka事務API的

2017-03-09 08:37:26

ApacheHBaseQuickstart

2023-12-19 09:36:35

PostgreSQL數(shù)據(jù)庫開源

2021-02-22 18:50:03

Ansible系統(tǒng)運維

2020-05-11 09:54:33

JavaScript開發(fā)技術(shù)

2022-10-28 18:36:18

2015-10-29 15:36:19

Redis入門
點贊
收藏

51CTO技術(shù)棧公眾號

久久亚洲一区二区三区四区五区高| 欧美久久免费观看| 免费看成人午夜电影| 少妇高潮av久久久久久| 久久亚洲国产| 精品嫩草影院久久| 日韩中文字幕组| 免费黄网在线观看| av一本久道久久综合久久鬼色| 欧美亚洲另类视频| 小泽玛利亚一区二区免费| 精品成人自拍视频| 精品视频一区 二区 三区| 青青青在线观看视频| 理论在线观看| 粉嫩av一区二区三区在线播放 | 欧美日韩国产在线观看| 日韩小视频网站| 在线观看a视频| www.欧美日韩| 亚洲在线免费观看| 黄色av一区二区| 影音先锋亚洲电影| 久久伊人精品天天| 69精品无码成人久久久久久| 久久丝袜视频| 精品欧美一区二区久久| 五月激情婷婷在线| 欧美××××黑人××性爽 | 亚洲欧美日韩天堂一区二区| 亚洲AV无码久久精品国产一区| 欧美日韩成人影院| 亚洲国产aⅴ成人精品无吗| 亚洲欧美日韩另类精品一区二区三区| 婷婷丁香一区二区三区| 国产成人自拍高清视频在线免费播放| 国产精品高潮在线| 国产精品视频免费播放| 亚洲日本激情| 欧美精品久久久久久久久| 中文字幕av播放| 91麻豆精品国产91久久久平台| 亚洲天堂成人在线视频| 免费看污黄网站在线观看| 99久久人爽人人添人人澡| 欧美一区二区观看视频| 天天做天天干天天操| 欧美成人app| 欧美影视一区在线| 男人女人黄一级| 日韩成人av电影| 色先锋久久av资源部| 免费看国产一级片| 夜鲁夜鲁夜鲁视频在线播放| 亚欧色一区w666天堂| 精品少妇在线视频| 高清毛片在线观看| 五月综合激情婷婷六月色窝| 岛国大片在线播放| 91制片在线观看| 精品久久久久久久久久| 尤物av无码色av无码| 美女在线视频免费| 一本色道久久综合亚洲aⅴ蜜桃 | 内射一区二区三区| 国产高清一区| 欧美成人精品xxx| 538精品在线观看| 欧美/亚洲一区| 久久久久国产一区二区三区| 日韩乱码一区二区| 国产精品日韩精品欧美精品| 国产91免费观看| 中文字幕网址在线| 精品一区二区三区视频| 成人欧美一区二区三区视频| 色呦呦视频在线| 久久免费国产精品| 亚洲免费在线精品一区| 二区三区在线观看| 亚洲一区二区精品3399| 国产亚洲综合视频| 成人在线视频免费| 欧美一卡在线观看| 老熟妇精品一区二区三区| 蜜桃一区二区三区| 日韩有码片在线观看| 麻豆疯狂做受xxxx高潮视频| 亚洲欧美日韩在线观看a三区 | 精品国产一区二区三区2021| 欧美成人激情免费网| www.免费av| 成人在线视频免费观看| 欧美激情一区二区三区成人| 国产成人精品片| 美女mm1313爽爽久久久蜜臀| 国产精品一区二区欧美黑人喷潮水| 头脑特工队2在线播放| 中国色在线观看另类| 日本人妻伦在线中文字幕| 精品国产第一福利网站| 日韩亚洲欧美综合| 女人又爽又黄免费女仆| 性欧美69xoxoxoxo| 欧洲美女免费图片一区| av手机免费看| 国产欧美一区二区精品性色超碰| 水蜜桃在线免费观看| 国产精品伦理| 欧美不卡一二三| 欧美人与性囗牲恔配| 国产在线成人| 国产一区视频在线| 亚洲色图狠狠干| 亚洲欧美日韩国产中文在线| 免费在线观看日韩视频| 亚洲一区网址| 久久天天躁狠狠躁老女人| 九九热精品视频在线| 国产91丝袜在线播放九色| 亚洲一区综合| 日韩在线短视频| 欧美大片一区二区三区| chinese全程对白| 久久精品一本| 国产精品视频在线免费观看| yellow91字幕网在线| 欧美色综合天天久久综合精品| 一本加勒比波多野结衣| 欧美人与禽猛交乱配视频| 国产精品一区av| 国产日本在线视频| 激情懂色av一区av二区av| 亚洲精品成人无码毛片| 亚洲高清影视| 91色琪琪电影亚洲精品久久| 午夜免费福利在线观看| 91福利在线观看| 成人免费av片| 中国女人久久久| 国产一区二区不卡视频在线观看| 91精品久久久| 91精品国产欧美一区二区| 美女av免费看| 美女视频黄频大全不卡视频在线播放| 日韩av高清在线播放| 日韩免费福利视频| 国产亚洲精品久久久| 日韩综合在线观看| 国产偷v国产偷v亚洲高清| 男女高潮又爽又黄又无遮挡| 久久aimee| 欧美一二三视频| 手机亚洲第一页| 欧美午夜美女看片| 最新中文字幕视频| 欧美亚洲网站| 日韩欧美一区二区在线观看| 日本精品另类| 视频在线观看99| 97超碰人人草| 一个色妞综合视频在线观看| 国产精品偷伦视频免费观看了 | 伦伦影院午夜日韩欧美限制| 国产偷拍一区二区| 亚洲一区二区三区四区五区中文 | 成人春色在线观看免费网站| 久久久久久com| 婷婷丁香一区二区三区| 日韩欧美亚洲一二三区| 在线视频第一页| 久草中文综合在线| 国产免费裸体视频| 尤物tv在线精品| 国产精品欧美日韩久久| 成人日韩欧美| 亚洲国产精彩中文乱码av| www.色国产| 亚洲欧洲韩国日本视频| 韩国av中国字幕| 日日夜夜精品视频免费| 91手机视频在线| 国产精品一区二区中文字幕| 日韩免费中文字幕| 二区三区在线观看| 亚洲福利视频二区| 特级西西444www大胆免费看| 亚洲色图视频网站| 国产亚洲色婷婷久久99精品91| 日韩一区精品视频| 久久久国内精品| 国产欧美日韩视频在线| 91久久久久久国产精品| 老司机深夜福利在线观看| 色久欧美在线视频观看| 免费观看黄一级视频| 91久久精品日日躁夜夜躁欧美| 永久免费看mv网站入口| 91香蕉视频mp4| 亚洲三级在线观看视频| 欧美亚洲一区| 免费看欧美一级片| 欧美日韩中文字幕一区二区三区| 国产不卡一区二区在线观看| 澳门av一区二区三区| 欧美—级a级欧美特级ar全黄| 噜噜噜在线观看播放视频| 日韩欧美自拍偷拍| 亚洲国产无线乱码在线观看| 亚洲成人精品在线观看| 国产免费美女视频| 久久精品亚洲精品国产欧美| 国产精品熟妇一区二区三区四区| 日本视频在线一区| 国产午夜福利在线播放| 欧美成熟视频| 尤物国产精品| 精品国产一区二区三区噜噜噜 | 性亚洲最疯狂xxxx高清| 理论片午午伦夜理片在线播放| 亚洲老头同性xxxxx| 亚洲av无码一区二区三区dv| 欧美揉bbbbb揉bbbbb| 六月丁香激情综合| 亚洲成人精品一区二区| 久久久久久久久久网站| 国产精品麻豆99久久久久久| 国产美女免费网站| 91美女蜜桃在线| 亚洲色图欧美日韩| 国产福利视频一区二区三区| 在线免费黄色网| 久久成人麻豆午夜电影| 国产区二区三区| 久久久久99| 农村妇女精品一二区| 一区二区动漫| 可以看毛片的网址| 欧美日韩三区| 日韩成人手机在线| 午夜日韩av| 欧美日韩视频免费在线观看| 99热国内精品| 咪咪色在线视频| 日韩在线中文| 一区二区三区偷拍| 欧美高清在线| 色撸撸在线观看| 天天综合一区| 人妻无码一区二区三区四区| 欧美99久久| 激情成人开心网| 亚洲黄色三级| 黄色片网址在线观看| 日韩视频不卡| 日韩中文字幕三区| 日精品一区二区| 国产色视频在线播放| 精品一区二区三区影院在线午夜| 中文字幕1234区| 国产精品中文欧美| 最新中文字幕日本| 91在线云播放| www.中文字幕av| 亚洲国产成人午夜在线一区| 人人干在线观看| 亚洲欧美日韩国产综合在线| 久久黄色小视频| 欧美日韩一区二区三区在线免费观看 | 欧美日韩在线中文| 日韩在线一二三区| 天天干天天色天天干| 国产suv精品一区二区三区| 精品国产一区在线| 欧美韩国一区二区| 精品自拍偷拍视频| 亚洲成人免费视| chinese国产精品| 51久久夜色精品国产麻豆| а√中文在线资源库| 亚洲精品久久久久中文字幕二区| 噜噜噜噜噜在线视频| 欧美成人免费在线观看| av2020不卡| 国产精品网红直播| 日本一区精品视频| 蜜桃av色综合| 亚洲综合专区| 中文字幕无码精品亚洲35| 免费看欧美美女黄的网站| 久久久久久无码精品人妻一区二区| 99久久精品久久久久久清纯| 极品蜜桃臀肥臀-x88av| 亚洲一区二区三区小说| 中文字幕免费视频观看| 日韩欧美第一区| 加勒比一区二区三区在线| 久久综合亚洲社区| 三上悠亚一区二区| 成人av资源网| 精品成av人一区二区三区| 中文字幕日韩精品无码内射| 日韩av在线播放中文字幕| 2018国产精品| 国产精品国产三级国产三级人妇 | 日韩天天综合| 波多野结衣国产精品| 99久久亚洲一区二区三区青草| 黄色录像免费观看| 色综合天天狠狠| 精品人妻一区二区三区含羞草 | 国产精品久久久久久久小唯西川| 国产精品嫩草影院在线看| 免费在线看黄色片| 激情综合色综合久久综合| www.自拍偷拍| 亚洲成人久久影院| jlzzjlzzjlzz亚洲人| 在线观看日韩专区| 亚洲人体视频| 韩国成人一区| 韩国一区二区三区在线观看| 一级黄色录像在线观看| 国产日韩成人精品| av图片在线观看| 日韩电影第一页| 丁香花高清在线观看完整版| 亚洲bt欧美bt日本bt| 欧美h版在线| 538在线视频观看| 国产午夜亚洲精品理论片色戒 | 国产98在线|日韩| 久久理论电影| 亚洲国产日韩欧美在线观看| 欧美激情中文字幕一区二区| 中文字幕免费观看| 日韩精品在线私人| 亚洲优女在线| 免费日韩av电影| 国产日本精品| 波多野结衣一二三区| 亚洲一区二区三区四区五区中文 | 伊人久久综合一区二区| 国产一区二区三区黄| 亚洲二区免费| 中文乱码人妻一区二区三区视频| 亚洲影视资源网| 国精品人妻无码一区二区三区喝尿| 欧美激情第99页| 成人另类视频| 俄罗斯av网站| 久久久影视传媒| 真实的国产乱xxxx在线91| 色一区av在线| 国产亚洲久久| 欧美人成在线观看| a在线欧美一区| 天堂网av手机版| 亚洲图片制服诱惑| 图片一区二区| 日韩免费在线观看av| 99久久精品一区二区| 久久夜色精品国产噜噜亚洲av| 亚洲人成在线观看| 婷婷久久综合九色综合99蜜桃| 蜜臀在线免费观看| 成人一区二区三区| 欧美黑人一区二区| 在线成人免费网站| gogo大尺度成人免费视频| www.欧美黄色| 久久综合色天天久久综合图片| 国产情侣小视频| 久久大大胆人体| 卡通动漫国产精品| 9久久婷婷国产综合精品性色| 亚洲欧美综合色| 亚洲精品网站在线| 人人做人人澡人人爽欧美| 四虎8848精品成人免费网站| 久久综合桃花网| 黑人与娇小精品av专区| 日韩黄色影院| 国产日韩一区二区| 日韩av高清在线观看| 欧美大片xxxx| 日韩精品福利在线| 欧洲成人一区| 真实国产乱子伦对白视频| 久久久久久久综合色一本| 国产视频一区二区三区四区五区| 国色天香2019中文字幕在线观看| 中文字幕伦av一区二区邻居| 国产资源中文字幕| 色香蕉久久蜜桃| 黄页网站在线| 亚洲欧美影院| 久久先锋资源网| 精品人妻一区二区三区浪潮在线 | 久久久加勒比|