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

vivo 超大數(shù)據(jù)規(guī)模分布式消息中間件架構演進實踐

大數(shù)據(jù)
新一代數(shù)據(jù)架構覆蓋數(shù)據(jù)全鏈路,包括數(shù)據(jù)的采集層、接入層,以及下游的海量計算、分布式存儲等。本次分享題目為 vivo 超大數(shù)據(jù)規(guī)模分布式消息中間件架構演進實踐。

一、vivo 架構演進實踐

1. 業(yè)務背景

首先來介紹一下相關業(yè)務背景。

圖片

上圖展示了 vivo 互聯(lián)網大數(shù)據(jù)場景下全鏈路架構。以終端用戶為起點,經過統(tǒng)一的數(shù)據(jù)集成,數(shù)據(jù)進入統(tǒng)一數(shù)據(jù)接入層,再通過 ETL 的海量計算和實時的數(shù)據(jù)分揀,將數(shù)據(jù)存入實時數(shù)倉和離線數(shù)倉,最終賦能到下游的業(yè)務產品。這個架構是當前主流的架構體系。在此架構中分布式消息中間件(Kafka/Pulsar)致力于為用戶提供一套在大數(shù)據(jù)場景下高吞吐、低延時、高可靠、高擴展、全托管、安全的統(tǒng)一數(shù)據(jù)接入服務和實時數(shù)倉服務。

我們認為,考慮 AI 大模型的變與不變,核心在于數(shù)據(jù),對數(shù)據(jù)穩(wěn)定性要求的日益提高也使得我們開始思考下一代消息中間件應該是什么樣子的。圖中展示了 vivo 的技術演進迭代路徑。vivo 消息中間件項目從 2019 年立項,2021 年完成功能建設,項目進入快速發(fā)展的階段,2022 年項目達到了成熟運營的水平。項目建設過程中,2021 年我們發(fā)現(xiàn) Kafka 在超大數(shù)據(jù)規(guī)模場景下存在一些架構上的缺陷,所以我們團隊開始對下一代分布式消息中間件 Palsar 進行調研,與之相關的項目在 2022 年正式立項。截至今年,經過一年的運營和引流,目前每天 Palsar 集群處理的消息量在 2 萬億左右。

圖片

統(tǒng)一數(shù)據(jù)接入層的上一層是統(tǒng)一數(shù)據(jù)采集層。vivo 在統(tǒng)一數(shù)據(jù)采集層會做一些高可用的保障。

(1)離線鏈路寫 HDFS 實現(xiàn)分鐘級主備切換

對于離線鏈路,做到了分鐘級的主備切換,這依賴于 manager 服務能實時檢測HDFS 集群的健康狀態(tài)并實時同步到 agent,當 HDFS 集群出現(xiàn)故障時,同時通知到上游的統(tǒng)一采集層以及下游的 ETL,在分鐘級的時間段內切換到備份集群上,實現(xiàn)在離線鏈路上的高可用保障。

(2)高優(yōu)業(yè)務雙鏈路容災快速切換

目前對于數(shù)據(jù)接入有實時鏈路和離線鏈路兩套數(shù)據(jù)接入架構,并會對實時鏈路和離線鏈路接入的數(shù)據(jù)做分鐘級對照校驗,從而實現(xiàn)實時和離線兩條鏈路保障高優(yōu)業(yè)務的容災切換。

2. 運營現(xiàn)狀

圖片

目前 vivo 內部 Kafka 集群日均處理消息數(shù)量達到了 20 萬億+,Palsar 集群日均處理消息數(shù)達到了萬億+,在這樣超大數(shù)據(jù)規(guī)模的場景下,我們還與業(yè)務團隊簽署了 SLA 四個 9 的高可用的保障協(xié)議,以確保用戶的高可用,同時實現(xiàn)降本增效。如圖所示,經過三年建設,我們的單機利用率提升了 210% 左右,Kafka 集群機器規(guī)模增長 52%,接入數(shù)據(jù)量增長 340%。

3. Kafka 部署架構

圖片

針對 Kafka 的部署架構,主要有兩種方案。方案一是使用大量物理機搭建一個超大規(guī)模的集群。方案二是以幾臺或幾十臺物理機為一個單位建構若干小集群。這兩種方各自有其優(yōu)缺點,方案一有點類似于在互聯(lián)網行業(yè)里的單體應用,而方案二更類似于微服務架構。實際兩種方案的選擇沒有絕對的好壞之分。

方案一有幾個優(yōu)點:一是它的資源利用率較高,因為它不需要對每一個小集群都預留一定的 buffer;二是當集群規(guī)模比較大以后,它應對數(shù)據(jù)業(yè)務方的業(yè)務流量突增能力比較強,而不至于在業(yè)務流量突增時,由于集群負載較高,進而反壓到客戶端,影響用戶;三是用戶體驗較好,對于業(yè)務團隊只需維護一套集群的連接信息,無需根據(jù)業(yè)務場景自己維護、辨別、使用不同的集群連接信息。但同時方案一也帶來了一些問題:一是其運維難度系數(shù)較高;二是一旦出現(xiàn)問題,故障影響面較廣;三是集群的資源隔離性較差。

方案二,這種小集群部署的優(yōu)點:一是因為每個集群規(guī)模較小,運維比較簡單,但如果總體集群的總數(shù)達到數(shù)千個,相應的運維投入也會隨之變高;二是當集群出現(xiàn)故障時,只會影響自己集群內部,故障影響范圍較小;三是集群跟集群之間嚴格做了物理隔離,資源隔離性非常好。其缺點,一是每一個集群都會需要一部分 buffer 來應對業(yè)務流量的突增,資源利用率較低;此外在應對用戶流量突增及用戶體驗等方面的能力都會較差一些。

綜合考慮上述兩個方案的優(yōu)缺點,在超大數(shù)據(jù)規(guī)模下,如果采用方案二,需要搭建和運維的 Kafka 集群數(shù)量可能達到上千個,單純靠人力運維將會是一個較大的工作量,所以 vivo 采用的是方案一的部署架構,并針對其缺點進行了改進。

(1)引入資源組,實現(xiàn)集群內節(jié)點邏輯隔離

圖片

首先針對大規(guī)模集群部署方案資源隔離性較差這一問題,通過在集群內部引入資源組實現(xiàn)集群內節(jié)點的邏輯隔離。資源組之間是邏輯隔離的,不會相互影響,從而實現(xiàn)了在同一個集群內部的機器邏輯隔離。

(2)基于項目維度實現(xiàn)智能動態(tài)限流

圖片

第二個問題是限流,限流本質是通過犧牲一部分客戶端的可用性來保障服務端的可用性。Kafka 集群的限流有幾種方式,第一種是基于客戶端的(如基于 client ID),還有一種是基于用戶端的或稱基于項目的限流。vivo 公司內部使用的是基于項目維度的限流。這種方式存在一些缺點,首先業(yè)務受損嚴重,一旦出現(xiàn)了限流的情況,用戶的流量就進不來,進而導致用戶端被反壓,數(shù)據(jù)發(fā)送失敗或消費延遲相關的問題;其次當限速閾值設置不合理時,會存在資源利用率較差和集群可用性風險,限速閾值限制較高時,集群的可用性得不到保障,限流閾值較低時,集群資源利用率較低;第三用戶會經常收到限流告警信息,用戶體驗較差;第四用戶收到限流告警后需要運維同學憑經驗綜合分析是否可以調整限速以便快速恢復業(yè)務,運維成本較高,因為限流閾值不支持自動進行動態(tài)調節(jié),業(yè)務會頻繁與 Kafka 組件的管理團隊進行溝通去調節(jié)這個閾值。

圖中左下方的案例示意了簡單根據(jù)項目數(shù)量設定限流閾值時可能出現(xiàn)的一種情況。假設一臺單機的流量閾值是 100M/s,A、B 兩個項目均運行在這臺單機上,對應每一個項目分配到的限流閾值是 50M/s,當流量超過限流值 50M/s 后,紅色陰影區(qū)域內的流量都會被犧牲掉。但實際上多個項目之間存在流量的波動周期的差距,因而不能采取一刀切的方式根據(jù)項目數(shù)量平均分配限流閾值。

針對這種情況,一種優(yōu)化思路是對在波峰期的項目 A,尋找其同一個資源組內當前流量值較低的項目 B,從項目 B 把流量借過來,動態(tài)調高 A 項目的限流閾值,當 B 項目流量增長后,再把流量還回去。基于這樣的優(yōu)化思路,我們團隊基于統(tǒng)一的監(jiān)控平臺、統(tǒng)一的指標采集平臺,以及統(tǒng)一的告警檢測平臺實現(xiàn)了智能動態(tài)限流。

圖片

智能動態(tài)限流需要解決限流粒度、限流閾值、可用性以及資源利用率這四個維度的平衡。這里我們引入了公司內部提供的統(tǒng)一告警檢測平臺。在指標采集過程中可能需要做一些降噪處理,解決數(shù)據(jù)的突刺現(xiàn)象,基于告警檢測平臺統(tǒng)一檢測的算法可以屏蔽掉異常告警,獲得精準預警,然后基于此再去做動態(tài)的限流調整。這套智能動態(tài)限流方案使 vivo 公司內部因為限流導致業(yè)務受損的情況降低了 90%。

(3)流量均衡與資源均衡

圖片

Kafka 的架構設計上分區(qū)與 broke 節(jié)點強綁定,默認的分區(qū)分配算法不能很好的解決分區(qū)均衡性的問題,無法實現(xiàn)動態(tài)調整。如上圖所示,Kafka 默認的分區(qū)輪詢分散算法會產生兩種情況。第一種情況下,因為無法保證每一個 topic 的分區(qū)數(shù)量都能與 broker 成正比,會出現(xiàn)一些 broker 上分配的分區(qū)數(shù)比較多,一些 broker 上分配的分區(qū)數(shù)比較少的情況。另外一種情況是,即使我們保證了在不同的 broker 上分區(qū)數(shù)量是盡可能一致的,但是由于 Kafka 的分區(qū)是有狀態(tài)的,所以說它會存在一些分區(qū)流量比較大,而另一些分區(qū)的流量比較小。這兩種情況都會使 broker 之間產生很大的流量差異。

我們在做這種大規(guī)模的物理機集群部署時,都會考慮通過一臺物理機掛載多塊磁盤從而提高物理機的 IO 效率。但 Kafka 的底層架構設計上一個分區(qū)與 broker 的某一塊磁盤綁定,無法充分發(fā)揮多塊磁盤的 IO 效率。

圖片

如上圖所示,假設當前有兩個 topic,其中綠色 topic 的流量是 100MB/s,紅色 topic 的流量是 300MB/s。在 broker1 上掛載了 data1 到 data4 共 4 塊磁盤,但是當前 Topic 分區(qū) P1-L 的數(shù)據(jù)只能寫入到磁盤 data1,這帶來一個致命的缺陷,當磁盤 data1 出現(xiàn) IO 瓶頸時,即使 data2 或者 data3 是空閑的,也沒辦法將數(shù)據(jù)轉寫到 data2 或者 data3 的磁盤上面去。這樣就導致當某一塊盤上出現(xiàn)多個較大分區(qū)時,它的磁盤 IO 瓶頸就會成為這一臺機器的性能瓶頸,沒辦法很好地利用起多塊盤的 IO。

圖片

基于該缺陷,我們團隊也做了很多思考。首先,在當前分區(qū)均衡算法上注入一些與主機相關的負載因子,使其去做更好的分區(qū)計劃。在第一期,我們注入了磁盤容量、CPU、流量等負載因子,使算法能生成更好的分區(qū)分散計劃。在第二期的分區(qū)均衡算法優(yōu)化上,注入了均衡性相關的參數(shù),如分區(qū)分散均衡、副本分散均衡等,使其能夠更好生成更加均衡的分區(qū)分散計劃。在跨機房方面我們也做了一些改進,實際情況中可能不需要所有的業(yè)務都實現(xiàn)跨機房容災,但是所有業(yè)務都必須實現(xiàn)跨交換機容災。每個公司的機房建設不太一樣,我們公司的機房建設中,交換機是單上聯(lián)的,所以在交換機這個層面可能存在單點故障的風險。因此在后面交換機風險改進方案里,我們也將交換機信息注入到分區(qū)均衡算法中,從而規(guī)避交換機的單點故障風險。未來我們也在思考跨機房實現(xiàn)分區(qū)分散,機房與機房之間的網絡延遲降低到可以接受的范圍之內可輕松實現(xiàn)。

圖片

其實 Kafka 核心架構帶來的問題遠不止上述提到的幾點,尤其是在超大數(shù)據(jù)規(guī)模場景下,問題表現(xiàn)得尤為明顯。第一是 Kafka 資源利用率比較低,因為 Kafka 無法根據(jù)未來的流量增長進行預測,所以也無法實現(xiàn)長期的均衡。第二是 Kafka 故障恢復慢,因其分區(qū)數(shù)據(jù)是和磁盤綁定的,當進行數(shù)據(jù)遷移時,遷移周期會比較長,尤其當一塊磁盤上有幾 T 數(shù)據(jù)或一臺 broker 上有幾十 T數(shù)據(jù)時,磁盤故障需要做踢盤或 broker 節(jié)點故障需要做下線時,需要遷移幾 T 或幾十 T 數(shù)據(jù)。數(shù)據(jù)遷移過程中還需要考慮不能影響實時業(yè)務數(shù)據(jù)的寫入,遷移周期一般都是周級。第三是 Kafka 故障率高,均衡時會做數(shù)據(jù)的拷貝、消費延遲時會讀磁盤數(shù)據(jù)導致磁盤 IO 受到影響,一旦出現(xiàn)這個問題,對實時數(shù)據(jù)的寫入也會存在影響,所以它的故障率會比較高。第四是無法快速響應業(yè)務增長,當集群擴容后需要先對分區(qū)做一次均衡,然后做流量歷史數(shù)據(jù)的遷移,全部遷移完后才可以將實時數(shù)據(jù)寫入到擴容機器上,整個擴容的周期較長。一般對于 Kafka 集群的擴容是以天或者以周為單位進行的。

圖片

基于以上所有的缺陷,我們發(fā)現(xiàn)核心問題在于 Kafka 數(shù)據(jù)存儲架構設計上,無法通過擴展能力的建設解決上述缺陷。Kafka 的架構設計沒辦法做到存算分離、分層存儲、分散存儲等。所以我們考慮要對整個分布式消息中間件做引擎的升級,解決方案有兩種,第一是基于 Kafka 的原有架構進行改造,第二是引入下一代的云原生分布式消息中間件 Pulsar。

二、Pulsar 核心架構升級

圖片

Pulsar 是基于云原生理念設計的分布式消息流組件,它在存儲層和計算層實現(xiàn)了存算分離,并且其同一分區(qū)的數(shù)據(jù)可以分散成多個 segment,每個 segment 可以落到不同的 bookie 存儲節(jié)點上,實現(xiàn)了在存儲節(jié)點上的分散,也可以實現(xiàn)在磁盤之間的分散。Pulsar 的核心架構具有以下幾個核心優(yōu)勢:

  • 存儲與計算分離。
  • 存儲、計算獨立擴展。
  • 秒級擴縮容。
  • 秒級的故障恢復。
  • 屏蔽硬件故障。

圖片

Pulsar 支持在硬件上面的秒級恢復。如圖所示,左邊是 Kafka 的架構,當磁盤發(fā)生故障后,必須去副本所在的 broker 節(jié)點把數(shù)據(jù)先同步一份,之后才可以把實時流量數(shù)據(jù)寫到我們的 broker 磁盤上。但是數(shù)據(jù)同步的周期性較長,可能要一天或者更長的時間,在這段時間之內,如果分區(qū)的副本數(shù)設置為 2,分區(qū)都處于單副本運行的高風險狀態(tài)。而 Pulsar 可以實現(xiàn)秒級的恢復,因為它不需要去做歷史數(shù)據(jù)的同步,分區(qū)流量可以秒級的轉移到其他磁盤或其他的 broker 上。Pulsar 后臺有一個缺副本的發(fā)現(xiàn)機制,補齊歷史數(shù)據(jù)。在實時場景下,我們更關注對實時寫入的數(shù)據(jù)做冗余的高可用保障,反而對于歷史數(shù)據(jù)同步性的要求不高。

圖片

Pulsar 具備秒級擴縮容的能力,這主要基于它存儲與計算分離的架構。因其存儲計算分離,它的 broker 和 bookie 也是分離的。一個無狀態(tài)的服務實現(xiàn)秒級的擴縮容是很簡單的,基于 K8S 或者 docker 來講的話,只需要彈一個 Pod,然后去拉取一個鏡像,重啟后就可以完成秒級的彈性伸縮。Pulsar 在 broker 層是無狀態(tài)的設計,使其它天然具備了秒級擴縮容能力。在 bookie 層,可以將其看作存儲層,它也可以做到秒級的擴縮容,只要擴容 bookie 節(jié)點被 broker 感知到以后,可以實時地將 broker 的流量寫到 bookie 節(jié)點上進行持久化的存儲。

圖片

Pulsar 核心架構優(yōu)勢還體現(xiàn)在客戶端內存分配上。在 Kafka 的架構下,尤其是在指定 key 的場景下,如果 broker 節(jié)點出現(xiàn)宕機或者響應緩慢的情況,就會反壓客戶端,導致客戶端 buffer pool 被故障分區(qū)的數(shù)據(jù)打滿,進而導致雪崩的現(xiàn)象。因為一個分區(qū)不可用,導致整個 topic 的所有分區(qū)都不可用甚至當前 producer 涉及的所有 topic 的所有分區(qū)都不可用。左下方是我們公司內部一次故障時的流量監(jiān)控曲線,可以看到,Kafka 單個 broker 節(jié)點一場后,整個資源組里所有 topic 的流量都無法寫入,就是因為故障節(jié)點直接把客戶端內存占滿后,正常分區(qū)的數(shù)據(jù)沒辦法分配到內存,無法寫入到服務端。對于這個問題,Pulsar 做了架構上的改造。客戶端內存的隔離粒度做到了分區(qū)級,當右上圖 broker2 出了問題,即使分區(qū)的 deque 被打滿以后,也不會去占用整個客戶端內存,消息還是能通過其他可用分區(qū)發(fā)送出去。右下方圖展示了我們故障演練的情況,它可以秒級恢復到其他 broker 節(jié)點上。

Pulsar 和 Kafka 的性能對比可以參見下圖。

圖片

三、高可用保障及可觀測

高可用保障是我們的生命線,沒有高可用,其他一切工作都是沒有意義的。

圖片

高可用保障主要圍繞故障展開,包括事前預防故障的發(fā)生、事后快速恢復,以及故障解決后應該怎樣復盤并提出改進措施。我們在事前,會基于對技術架構的理解做故障演練和測試,在流程規(guī)范和平臺工具方面進行保障。事中最核心的是整個監(jiān)控告警體系,在此基礎上進行質量運營,及時發(fā)現(xiàn)、響應,最終支撐組件在超大數(shù)據(jù)規(guī)模下的高可用。

圖片

我們的監(jiān)控告警體系可以分為多個維度。在基礎設施層,實現(xiàn)了對機房、網絡、交換機的監(jiān)控;在主機層,實現(xiàn)了對 CPU、內存、磁盤流量相關的監(jiān)控;在服務層,尤其是在 Kafka 的服務層,會對 GC、warning 日志或 error 日志進行監(jiān)控告警;在用戶層,支持限流告警、延遲告警以及流量突增的告警。以上都是為了在故障發(fā)生前一步告警,以便及時介入人工干預,避免故障發(fā)生。所有告警指標的采集都由統(tǒng)一檢測平臺,經過降噪,統(tǒng)一發(fā)出異常告警,觸達我們的用戶、運維以及管理人員。在進行監(jiān)控告警體系建設時,比起頻繁告警,我們更重視告警的精準度,尤其是在有限的人力運維情況下,太多的告警會導致運維人員對告警的敏感度下降,忽視關鍵告警,最終導致故障的發(fā)生。

圖片

因為人具有主觀能動性,人為因素是導致故障的重要誘因之一,所以我們需要一套貫穿于整個事前事中以及事后的規(guī)范體系來規(guī)范人的行為。包括事前對代碼管理、方案和代碼的評審、發(fā)布和變更、變更灰度優(yōu)先級、值班等的規(guī)范,事中對故障處理的規(guī)范、預案執(zhí)行的規(guī)范、日常運維的規(guī)范,事后故障的管理規(guī)范,以及故障的復盤規(guī)范等,通過一套全生命周期的規(guī)范來盡可能規(guī)避人為因素導致的故障。

圖片

Pulsar 作為新一代云原生分布式消息中間件,架構設計非常優(yōu)秀,但是作為新興組件缺乏長期超大規(guī)模數(shù)據(jù)處理的驗證,在穩(wěn)定性上也存在較多問題。基于我們平臺的高可用體系,以及監(jiān)控告警體系的實踐,經過故障演練和自測,我們在近兩年間解決了 Pulsar 27 個嚴重影響穩(wěn)定性的問題,19 個重要問題,44 個一般問題。目前在達到 2 萬億日均處理消息量的情況下,我們做到了全年無故障。

圖片

可觀測對于用戶來講,可能關注的是 topic 的流量指標,尤其是 top 級別的流量指標,根據(jù)觀測結果決定是否需要對某一些 topic 做治理,或者判斷該 topic 消耗的成本是不是與它所帶來的收益正相關。此外我們還會關注消費延遲指標。我們的可觀測平臺,能夠實時定位到用戶某一臺 IP 節(jié)點上的機器出現(xiàn)消費延遲的情況,方便我們在數(shù)據(jù)消費延遲的時候能夠快速定位到問題。

圖片

我們的告警實現(xiàn)了從數(shù)據(jù)接入,到檢測配置,再到告警配置以及告警處置四個方面的閉環(huán),相關的配置都可以通過平臺進行配置操作,對告警的處置、告警的回調、告警的詳情都可以通過可觀測的告警平臺進行查看。

圖片

最后對于運維管理人員而言,我們更關注的是當遇到故障后如何快速恢復,以及是否能通過一些日常巡檢來發(fā)現(xiàn)當前系統(tǒng)存在的異常。因此我們在運維管理方面,也實現(xiàn)了可觀測,包括對 topic 的流量監(jiān)控,對整個資源組的 GC 監(jiān)控,以及對延遲的監(jiān)控等。

四、vivo 架構未來規(guī)劃

圖片

最后談一下 Pulsar 未來規(guī)劃。Pulsar 作為下一代云原生的分布式消息中間件一定會成為未來的主流。因此我們對其分層存儲以及函數(shù)式計算、全鏈路監(jiān)控會重點規(guī)劃。另外如何應用 Pulsar SQL,以及 Pulsar function 使其更好地賦能業(yè)務也是我們未來需要去考慮的一些點。最后,關于 Pulsar 容器化的問題我們也有一定的思考,前文在介紹 Pulsar 部署架構的部分提到了大量小集群運維,采用純人力的運維不太現(xiàn)實,如果說未來能夠實現(xiàn)容器化,由容器化來幫助我們做集群管理,就能大量節(jié)省運維人力成本。

責任編輯:姜華 來源: DataFunTalk
相關推薦

2023-01-11 21:11:37

RabbitMQRocketMQ消息中間件

2024-03-28 12:55:00

消息中間件RocketMQ

2017-12-04 09:00:00

金融開源軟件分布式消息中間件

2025-03-27 11:03:18

2021-11-14 16:07:35

中間件阿里Seata

2019-08-12 11:00:59

美團網MySQL數(shù)據(jù)庫

2024-12-11 12:41:33

2023-10-24 07:50:18

消息中間件MQ

2023-06-29 10:10:06

Rocket MQ消息中間件

2018-04-03 09:27:42

分布式架構系統(tǒng)

2015-08-11 11:16:36

淘寶中間件

2022-11-02 10:08:46

分布式高并發(fā)消息中間件

2022-09-21 16:09:28

消息中間件

2021-12-14 10:39:12

中間件ActiveMQRabbitMQ

2013-03-22 14:44:52

大規(guī)模分布式系統(tǒng)飛天開放平臺

2016-01-12 14:59:40

分布式存儲分布式存儲架構

2023-06-29 11:06:46

vivoID服務器

2022-03-25 08:40:32

分布式架構

2019-11-12 08:40:03

RocketMQ架構

2022-08-09 08:31:29

RocketMQ消息中間件
點贊
收藏

51CTO技術棧公眾號

av日韩中文| 看黄色一级大片| 91福利在线观看视频| 欧美日韩一区二区综合| 欧美区视频在线观看| 中文字幕日韩精品久久| 亚洲精品国产片| 亚洲美女啪啪| 亚洲性生活视频| 在线观看免费av网址| 在线三级中文| 91蝌蚪国产九色| 国产精品一区二区三区成人| 久草中文在线视频| 狠狠综合久久av一区二区蜜桃| 亚洲一区二区在线免费观看视频 | 国产精品国产三级欧美二区 | 国产精品羞羞答答在线观看 | 屁屁影院ccyy国产第一页| 四虎在线视频免费观看| 秋霞国产午夜精品免费视频| 欧美另类高清videos| 人妻少妇精品无码专区二区| 三级视频网站在线| 极品少妇一区二区| 91精品国产一区| 天天色天天综合| 色豆豆成人网| 中文字幕日韩一区| 免费久久99精品国产自| 国产内射老熟女aaaa∵| 美女诱惑一区| 欧美丰满少妇xxxx| 精品在线观看一区| 美女精品一区最新中文字幕一区二区三区 | 亚洲优女在线| 亚洲欧洲av在线| 麻豆精品视频| 黄色av小说在线观看| 蜜桃视频一区| 久久人人爽人人爽人人片av高请| 中日韩精品一区二区三区| 成人网av.com/| 在线视频观看一区| 免费电影一区| 成人免费视频国产| 国产在线乱码一区二区三区| 国产精品对白刺激| 婷婷丁香综合网| 日本成人中文| 亚洲电影第1页| www.桃色.com| 亚洲精品一区av| 亚洲婷婷综合久久一本伊一区 | 蜜桃网站在线观看| xxxx18国产| 久久国产成人午夜av影院| 久久在线精品视频| 国产精品suv一区二区88| 免费观看久久av| 日韩精品在线观看一区| 成人性生活免费看| 成人免费av电影| 欧美日韩在线影院| 黄色一级视频在线播放| h片在线观看视频免费免费| 一区二区三区在线看| 日本黄xxxxxxxxx100| 高清全集视频免费在线| 亚洲日本电影在线| 中文字幕色呦呦| 肉体视频在线| 久久视频一区二区| 快播亚洲色图| 国产黄在线播放| 国产·精品毛片| av成人综合网| 日本黄色三级视频| 91亚洲资源网| 任我爽在线视频精品一| 国产1区2区3区在线| 国产精品色一区二区三区| 在线精品日韩| 欧美人动性xxxxz0oz| 亚洲电影中文字幕在线观看| 精品久久一二三| 拍真实国产伦偷精品| 日韩一区在线看| 白白操在线视频| 97人人在线视频| 色94色欧美sute亚洲13| 青青在线免费观看| 欧美jizzhd欧美| 亚洲精品免费电影| 分分操这里只有精品| 桃色av一区二区| 欧洲精品中文字幕| 国内精品国产三级国产aⅴ久| 国产精品一区二区三区av| 日韩精品在线一区二区| 精品一区二区视频在线观看 | 欧美日韩久久一区二区| 熟妇女人妻丰满少妇中文字幕| 麻豆免费在线| 91精品办公室少妇高潮对白| 在线能看的av网站| 国产精品18hdxxxⅹ在线| 国产亚洲欧美aaaa| 欧美人妻一区二区| 丝袜亚洲精品中文字幕一区| 92看片淫黄大片欧美看国产片| 亚洲 欧美 中文字幕| 美国av一区二区| 国产激情美女久久久久久吹潮| 污污网站免费在线观看| 亚洲欧洲成人自拍| www.国产区| 亚洲三区欧美一区国产二区| 亚洲三级 欧美三级| 欧美日韩一级大片| 日韩av在线发布| 欧美一级电影在线| 国产免费av观看| 91蝌蚪porny| 国产曰肥老太婆无遮挡| 国产69精品久久久久按摩| 亚洲第一色中文字幕| 日韩三级在线观看视频| 久久一区中文字幕| 国产一区精品视频| 午夜dj在线观看高清视频完整版 | 正在播放亚洲| 二区三区不卡| 精品国产乱码久久久久久闺蜜| 久久丫精品忘忧草西安产品| 国语对白精品一区二区| 成人久久一区二区| 99视频在线观看地址| 精品久久中文字幕久久av| 搡的我好爽在线观看免费视频| 九九精品久久| 97在线看福利| 亚洲高清视频在线播放| 自拍偷拍亚洲激情| 久久婷婷综合色| 免费欧美一区| 日本免费久久高清视频| 天天躁日日躁狠狠躁喷水| 亚洲国产精品精华液网站| 91日韩精品视频| 日韩精品免费一区二区三区| 国产精品大片wwwwww| 美州a亚洲一视本频v色道| 亚洲 欧美综合在线网络| 欧美午夜精品一区二区| 国产 日韩 欧美 综合 一区| 久久精品视频一| 又色又爽又黄无遮挡的免费视频| 91免费视频网| 无码精品a∨在线观看中文| 哺乳挤奶一区二区三区免费看| 欧美精品一区二区三区蜜臀| 男人操女人的视频网站| 国产一区91精品张津瑜| 欧美日韩视频免费在线观看| 欧美激情三区| 日韩在线观看免费全| 一级α片免费看刺激高潮视频| 国产欧美1区2区3区| 干日本少妇视频| 偷拍自拍亚洲| 毛片精品免费在线观看| 亚洲精品中文字幕成人片| 亚洲动漫第一页| 黄色在线观看av| 视频在线观看国产精品| 亚洲人一区二区| 青青青免费在线视频| 日韩精品中文字幕视频在线| 青青青国产在线| 国产日韩成人精品| 日本人69视频| 亚洲小说欧美另类婷婷| 久久偷窥视频| 欧美激情啪啪| 欧美精品福利在线| 国产免费的av| 亚洲成a人在线观看| 国产交换配乱淫视频免费| 日本美女一区二区三区| 中文字幕中文字幕在线中一区高清 | 国产农村妇女毛片精品| 亚洲婷婷在线视频| 免费看毛片的网站| 青草av.久久免费一区| www.黄色网址.com| 亚洲日本三级| 成人欧美一区二区三区黑人孕妇| 最新黄网在线观看| 国产视频久久久久久久| 一区二区精品视频在线观看| 亚洲一区二区在线免费看| av中文字幕免费观看| 国产麻豆9l精品三级站| 午夜精品久久久内射近拍高清| 一区二区三区日本视频| 久久久爽爽爽美女图片| 超碰免费在线观看| 精品久久人人做人人爽| 波多野结衣激情视频| 一区二区成人在线观看| 91成人在线免费视频| 一本色道久久综合亚洲精品不| 欧美人与物videos另类| 免费一级欧美在线大片| xxxxxxxxx欧美| 日韩一级片免费| 欧美男同性恋视频网站| av大全在线观看| 亚洲精品乱码久久久久久黑人| 在线视频 日韩| 久久99精品久久久久久| 久草精品在线播放| 亚洲国产1区| 伊人久久大香线蕉精品| 日韩欧美在线精品| 99久久伊人精品影院| 激情久久99| 日韩av成人在线观看| 国产经典三级在线| 久久久成人精品视频| 国产一区二区三区福利| 日韩av在线资源| 亚洲国产精品18久久久久久| 欧美日韩一级二级三级| 无码人妻久久一区二区三区不卡| 亚洲午夜一二三区视频| 无码黑人精品一区二区| 中文字幕av一区二区三区| 黄色正能量网站| 99这里只有精品| 四虎成人免费视频| 国产精品影视在线观看| 亚洲一区二区在线视频观看| 全国精品久久少妇| 欧美日韩怡红院| 欧洲激情视频| 久久婷婷开心| 另类ts人妖一区二区三区| 国产v综合ⅴ日韩v欧美大片| 97在线超碰| 欧美国产日韩在线| 最新黄网在线观看| 欧美成人午夜激情在线| dy888亚洲精品一区二区三区| 在线观看国产欧美| 成年人在线观看视频| 中文国产亚洲喷潮| 午夜伦理在线| 日韩中文在线视频| 老司机在线永久免费观看| 色综合伊人色综合网| 9191在线| 精品国产美女在线| 国产不卡在线| 九九热这里只有精品免费看| 91香蕉在线观看| 久久久久这里只有精品| 高清毛片在线观看| 欧美制服第一页| 91九色综合| 成人免费大片黄在线播放| 欧美视频二区欧美影视| 国产精品美女黄网| 亚洲精华一区二区三区| 日本一区高清不卡| 日韩一级毛片| wwwjizzjizzcom| 亚洲国产精品一区制服丝袜| 2022亚洲天堂| 蜜臀va亚洲va欧美va天堂| 国产69精品久久久久久久| 国产欧美日韩一区二区三区在线| 日韩精品一区在线视频| 久久久www| 在线不卡一区二区三区| 国产成人精品午夜视频免费| 一起草在线视频| 亚洲国产成人私人影院tom| frxxee中国xxx麻豆hd| 亚洲国产精品久久久久婷婷884| 天天操天天干视频| 欧美性猛交xxxxxxxx| 99久久久无码国产精品免费| 精品国产乱码久久久久久蜜臀| 天天舔天天干天天操| 中文一区二区视频| 免费在线播放电影| 国产精品黄页免费高清在线观看| 日韩精品第一| 成人动漫视频在线观看完整版| 欧美三级午夜理伦三级小说| 日韩精品无码一区二区三区| 一区二区在线影院| 亚洲午夜精品一区二区 | 欧美成人三级电影在线| 天堂av电影在线观看| 日韩在线视频线视频免费网站| 日本精品600av| 国产精品99久久久久久人 | 国产精品com| 日韩在线观看中文字幕| 日本一区视频在线观看| 欧美区一区二| 美女网站色免费| 99久精品国产| 国产免费无码一区二区视频| 91精品福利视频| 天堂av资源在线| 精品国产一区二区三区久久久狼| 欧美videosex性欧美黑吊| 国产精品免费一区二区三区都可以| 亚洲一二三区视频| 色综合久久久久久久久五月| 日韩午夜精品| 中文字幕永久免费| 17c精品麻豆一区二区免费| 在线观看日本视频| 精品国产亚洲在线| 成人福利网站| 国产欧美精品在线播放| 国产探花一区| 91视频 -- 69xx| 成人午夜在线免费| 国产精品久久久精品四季影院| 欧洲人成人精品| 青青青草原在线| 68精品久久久久久欧美| jizzjizzjizz欧美| 日韩欧美猛交xxxxx无码| 国产在线观看一区二区| 2017亚洲天堂| 欧美性猛交xxxx黑人交| 春暖花开成人亚洲区| 热99精品里视频精品| 久久激情av| 亚洲人成无码网站久久99热国产| 蜜桃视频一区二区三区| 韩国三级hd中文字幕| 色婷婷久久一区二区三区麻豆| 韩国av中文字幕| 亚洲成人久久一区| 丁香花在线电影小说观看| 91精品久久久久久蜜桃| 亚洲电影影音先锋| 日韩高清在线一区二区| 亚洲另类色综合网站| h片在线免费看| 欧美乱人伦中文字幕在线| 日韩欧美另类中文字幕| 欧美国产视频一区| 99re这里只有精品6| 伊人久久综合视频| 亚洲国产天堂久久国产91 | 99re8这里有精品热视频免费 | 女同性一区二区三区人了人一| 污片在线免费看| 中文字幕在线一区免费| 国产老妇伦国产熟女老妇视频| 日韩色在线观看| 少女频道在线观看免费播放电视剧| 成人中心免费视频| 欧美不卡在线| 国产精品99精品无码视亚| 性欧美疯狂xxxxbbbb| 日中文字幕在线| 国产精品日韩久久久久| 久久久久免费av| 国产精品成人免费一区久久羞羞| 亚洲一二三四区| 亚洲aaaaaaa| 国产精品国模在线| 亚洲精品国产首次亮相| 美女扒开腿免费视频| 色哟哟一区二区在线观看| 午夜激情视频在线| 成人av蜜桃| 久久先锋影音| 日本 欧美 国产| 精品国产免费视频| 亚洲成人短视频| 亚洲成人动漫在线| 久久综合九色综合97婷婷女人| 中文字幕一区二区三区四区欧美| 国产一区二区三区在线播放免费观看 | 欧美日韩视频在线第一区| 精品孕妇一区二区三区| 久久国产精品久久| 激情成人午夜视频| 国产小视频在线免费观看|