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

vivo 超大規模消息中間件實踐之路

開發 架構
本文主要介紹超大數據規模場景下分布式消息中間件在vivo的應用實踐。

在線業務側主要從RocketMQ集群部署架構、平臺系統架構、日常運維操作平臺、監控告警一體化實踐以及vivo如何通過建設AMQP消息網關的方式完成所有在線業務服務從RabbitMQ到RocketMQ的業務無感遷移,實現了在線業務消息中間件組件的統一。

大數據側主要從資源隔離、流量均衡、智能動態限流、集群治理四個維度介紹Kafka在vivo的最佳實踐以及Kafka核心技術架構在超大數據規模場景下的缺陷以及未來對Pulsar組件的長線規劃和建設。

一、分布式消息中間件在vivo的運營現狀

1.1 技術選型

圖片

在技術選型上,我們從吞吐量、功能特性、生態集成、開源活躍等多個維度對比了當前主流的分布式消息中間件,最終在線業務側我們選擇基于RocketMQ構建消息平臺,依托RocketMQ豐富的功能特性滿足業務間削峰、解耦、異步化的需求。

大數據側我們選擇具備高并發、高可用、低延遲、高吞吐能力的分布式消息中間件Kafka。構建超大數據規模處理能力的統一數據接入服務和實時數倉服務。Kafka組件作為統一數據接入服務,是大數據全鏈路中的咽喉要道,是大數據生態體系建設中不可或缺的重要組件之一。

1.2 規模現狀

運營指標方面目前大數據業務側Kafka集群接入項目數百、接入規模方面Topic數量達到數萬、集群日均處理消息達數十萬億條、可用性保障99.99%、單機日均處理消息達數百億條。

在線業務側RocketMQ集群接入項目數百、接入規模方面接入數千服務、集群日均處理消息達數百億條、可用性保障100%,發送平均耗時<1ms。

二、大數據側消息中間件最佳實踐

2.1 Kafka簡介

圖片

首先我們看下Kafka的官網定義及發展歷史,Kafka是由Apache軟件基金會開源的一個流處理平臺,是一種高吞吐量的分布式發布訂閱消息系統。具有高吞吐、低延遲、高并發、高可用、高可擴等特性。

Kafka是由LinkedIn公司在2010年開源,2011年交由Apache軟件基金會進行孵化,2012年成為Apache軟件基金會的頂級開源項目。

2.2 Kafka在超大數據規模場景下面臨的挑戰

圖片

在超大數據規模場景下我們會面臨以下幾個問題?

  1. 如何規劃資源隔離保證核心業務、高優業務、一般業務之間相互不受影響?
  2. 如何保證集群內部節點間流量均衡,降低單節點或部分節點流量差異太大帶來的資源浪費?
  3. 超大數據規模場景下如何進行限流保障集群的穩定性并盡可能降低對業務可用性的影響?
  4. 集群長期運行,客戶端版本多樣,如何持續保障集群的高可用性?

下面我將從資源隔離、流量均衡、智能動態限流、集群治理四個維度和大家一起交流Kafka在vivo的最佳實踐。

2.3 資源隔離

圖片

資源隔離的核心作用在于避免業務與業務之間的相互影響,但隔離粒度、資源利用率、運維成本之間如何進行權衡,是我們需要思考的重點。隔離粒度太粗會導致隔離效果不佳,隔離粒度太細會導致資源利用率較低、運維成本增加。

那vivo在Kafka集群資源隔離上是如何平衡三者關系的呢?

首先我們根據業務屬性、業務線兩個維度進行集群維度的隔離,例如我們在集群劃分上分為了商業化專用集群,監控專用集群,日志專用集群等。在集群維度做了機器資源的物理隔離。

同時我們在集群內部引入了資源組的概念。同一個集群內部可以包含多個資源組。每個資源組可以為多個業務提供服務。資源組與資源組之間相互獨立。

上圖中右上圖是我們沒有引入資源組概念時集群內部不同業務Topic分區的分散情況,大家可以看到業務A和業務B的Topic分區分散到集群內的所有broker上,若業務A的流量突增可能會造成業務B受到影響,右下圖是我們引入資源組概念后不同業務Topic分區的分散情況,可以看到不同業務的topic分區只會分配到自己業務所屬的資源組內,即使業務A的流量突增導致機器不可用也不會對業務B造成影響。

引入資源組概念后讓我們能在集群內部實現機器資源的邏輯隔離。所以我們在資源隔離方面采用了物理隔離和邏輯隔離兩種方式相結合,實現了在超大數據規模場景下Kafka集群的資源隔離方案。

2.4 流量均衡

圖片

流量均衡的核心作用在于充分利用集群內部資源,提升資源利用率。Kafka服務作為一個有狀態的服務,Kafka在技術架構設計上Topic分區與節點綁定,不支持分區同一副本數據在磁盤和節點維度分散存儲。對分區的讀寫請求都由分區Leader所在節點進行處理。所以Kafka集群流量均衡的本質是Topic分區的分散均衡。

在流量均衡方面我們做兩期的建設,第一期我們在分區分散均衡算法上引入機器的實時出入流量、cpu負載、磁盤存儲等指標作為負載因子生成分區遷移計劃。執行分區遷移后達到流量均衡的目的。流量均衡一期功能上線后我們將資源組內節點間流量差異從數百兆/s降低到數十兆/s。隨著集群數據規模的持續增加,我們發現數十兆/s的流量差異依然會造成資源浪費。

所以在流量均衡二期功能建設上我們增加了分區分散均衡、Leader分散均衡、副本分散均衡、磁盤均衡等Kafka元數據指標作為負載因子生成Kafka分區遷移計劃,并在分區遷移執行上增加了多種遷移提交策略。流量均衡二期功能上線后我們將資源組內節點間流量差異從數十兆/s降低到十兆以內/s。

圖片

上圖是我們流量均衡一期功能上線前后資源組內節點的流量監控面板,可以看到一期功能上線前資源組內節點間的流量偏差在數百兆/s。一期功能上線后資源組內節點間流量偏差在數十兆/s以內,資源組內節點間流量偏差降低75%。極大提升了服務端的資源利用率。

圖片

上圖是我們流量均衡二期功能上線前后資源組內節點的入出流量監控面板,可以看到節點間入出流量偏差從數十兆/s降低到十兆以內/s,資源組內節點間流量偏差降低80%。效果也是非常明顯。

2.5 智能動態限流

圖片

限流的本質是限制客戶端的流量突增以確保服務端的可用性。避免客戶端的流量突增導致服務端整體不可用。限流的粒度,限流閾值的設定,資源利用率、服務端穩定性之間應該如何做權衡呢?是我們需要思考的重點。限流粒度太粗會導致限流效果不佳,當大部分業務同時流量突增會對服務端的穩定性帶來風險。限流粒度太細服務端應對客服端流量突增能力不足,限流閾值設置太大會給服務端穩定性帶來風險,限流閾值設置太小會導致服務端資源利用率較低。

限流方面,

  1. 首先我們采用多平臺聯合診斷機制根據項目實際生產數據情況判別是否需要進行流量調整,計算調整后的限流閾值。其中多平臺包含(JMX統一指標采集平臺,統一監控平臺、統一告警平臺、Kafka集群管理平臺等)。
  2. 第二、智能分析Kafka集群服務資源負載情況,計算各資源剩余情況。確定是否可以進行閾值調整并結合客戶端實際生產數據情況計算閾值調整到多少合適。
  3. 第三、自動實時調整限流閾值。

通過以上三步實現智能動態限流方案。解決了限流粒度、限流閾值設定、資源利用率、Kafka集群可用性四者之間的平衡關系。

實現智能動態限流后給我們帶來以下幾點明顯的收益。

圖片

  1. 大大提升Kafka集群服務端應對客戶端流量突增的能力。
  2. 利用項目錯峰的方式進一步提升Kafka集群的資源利用率。
  3. 智能化自動調整項目限流閾值無需人工介入,大大降低Kafka集群在超大數據規模場景下的運維成本。
  4. 動態根據服務端負載情況調整項目限流閾值,盡可能減小限流對業務可用性的影響。

2.6 集群治理

圖片

Kafka集群元數據統一由ZooKeeper集群管理,元數據信息永久有效永不過期,元數據的下發由Kafka Controller節點統一下發,隨著業務的不斷發展,數據規模的不斷增加,集群內部Topic的數量達到萬級,分區數量達到數十萬級。元數據治理能有效避免元數規模給Kafka集群穩定性帶來的影響。隨著接入的服務、Kafka用戶越來越多,正確的使用Kafka 客戶端也能大大提升Kafka服務端的穩定性和資源利用率。Kafka分區與磁盤目錄綁定,創建Topic、Topic分區擴容時根據Topic流量合理設置Topic分區數能有效避免單機或單盤性能瓶頸成為集群整體的性能瓶頸。

vivo在Kafka集群治理方面實現了節點流量偏差治理、Topic元數據治理、Topic分區數據傾斜治理、Topic超大分區治理、Topic消費延遲治理等方案為Kafka集群的高可用性保駕護航。

2.7 實踐經驗沉淀

圖片

vivo Kafka消息中間件團隊在三年時間內,根據實際的業務場景和生產數據規模沉淀了較多的實踐經驗。例如在高可用/高可擴方面實現了機架感知、彈性伸縮、數據壓縮等能力建設,在監控告警方面提供了用戶限流告警、Topic流量突增告警、消費延遲告警、Leader實時監控告警,多平臺聯合故障感知告警等能力建設。我們為Kafka集群做了很多的擴展能力建設,那解決了Kafka集群在超大數據規模場景下的所有問題了嗎?答案是否定的。

接下來我們一起看看Kafka集群在超大數據規模場景下面臨的新挑戰。

2.8 Kafka在超大數據規模場景下由技術架構帶來的缺陷

圖片

由Kafka架構設計所帶來的一些痛點無法通過擴展能力解決,并且Kafka架構設計上分區同一副本數據與磁盤強綁定不支持分散存儲、不支持存儲與運算分離、不支持冷熱數據分層存儲等設計缺陷在超大數據規模場景下顯得尤為明顯。所以在超大數據規模場景下Kafka集群面臨了以下幾個痛點

  1. 資源利用率低。
  2. 無法快速響應業務增長。
  3. 故障恢復時間長。
  4. 歷史數據消費故障率高(主要體現在磁盤io性能上)。

2.9 大數據側分布式消息中間件未來規劃

基于以上Kafka在架構設計上的缺陷,vivo Kafka團隊于2021年開始對另一款開源分布式消息中間件Pulsar進行調研。

2.9.1 Pulsar簡介


圖片

我們看下Pulsar的官網定義及發展史:Pulsar 是 Apache軟件基金會的頂級開源項目,是集消息、存儲、輕量化函數式計算為一體的下一代云原生分布式消息流組件,采用了計算與存儲分離的架構設計,支持多租戶、持久化存儲、多機房跨區域數據復制,具有高并發、高吞吐、低延時、高可擴,高可用等特性。

Pulsar 誕生于2012 雅虎公司內部,2016年開源交由Apache軟件基金會進行孵化,2018年成為Apache軟件基金會頂級開源項目。

2.9.2 Pulsar核心優勢

圖片

基于Pulsar支持存算分離,分區數據分散存儲、冷熱數據分層存儲、Broker無狀態等架構設計,讓Pulsar在超大數據規模場景下具備了資源利用率較高、快速響應業務增長、秒級故障恢復、實時流量均衡、支持海量數據存儲等明顯優勢。

2.9.3 Pulsar未來規劃

圖片

我們對Pulsar組件的規劃分為四個階段,包含項目啟動、穩定性建設、能力進階、穩定運營。

目前我們處在Pulsar組件穩定性建設階段。

2022年我們的目標是打造支持日均萬億級消息處理能力的Pulsar集群,完成分層存儲,監控告警一體化、KoP功能平臺化等擴展能力建設。

計劃2023年打造具備日均十萬億級消息處理能力的Pulsar集群,達到行業一流水準。并完成Pulsar broker容器化部署、Pulsar生態體系建設、Pulsar Sql和Pulsar Function的應用調研等擴展能力建設。

將在2024年實現日均數十萬億級消息處理能力的Pulsar集群,達到行業超一流的水準。

三、在線業務側消息中間件最佳實踐

3.1 RocketMQ簡介

圖片

RocketMQ是阿里巴巴于2012年開源的低延時、高并發、高可用、高可靠的分布式消息中間件,具有海量消息堆積、高吞吐、可靠重試等特性。

RocketMQ于2012年開源,2016年進入Apache孵化,于2017年成為Apache頂級項目。

3.2 RocketMQ在vivo內部使用現狀

圖片

vivo中間件團隊在2021年引入RocketMQ并且完成了高可用和平臺化建設。

當前分別在多個機房部署了多個集群供業務使用,每日消息量數百億。

集群分布在多個機房,每日消息量級也不低,高可用運維保障是有難度的。

3.3 vivo基于RocketMQ的高可用保障實踐經驗

3.3.1 集群部署架構介紹

圖片

為了更好的保障集群的高可用,我們采用了雙機房熱備的方式進行集群搭建。

我們會在兩個機房進行Broker的部署,業務Topic會默認分布在兩個機房,以此來保障在一個機房內的Broker節點異常時業務可以保持正常生產消費能力。

業務默認是會優先使用本機房的節點進行生產消費,只有在異常時才會自動快速完成跨機房的流量切換。

同時我們構建了一個BrokerController模塊用于實現Broker節點的主從切換,以此保障集群容量的快速恢復。

雙機房熱備模式有哪些優勢呢?

  • 第一,消息無需跨機房復制,降低對機房專線的依賴;
  • 第二,可以降低業務發送消息的延時,也可以提升業務的處理性能;

雙機房熱備模式的劣勢是每個機房的節點都需要冗余一定的buffer來支撐其它機房的節點異常時自動轉移過來的業務流量。

3.3.2 平臺系統架構介紹

圖片

集群雙機房熱備部署模式是消息平臺的高可用基石,在此之外我們還建設了多個平臺模塊來保障平臺的高可靠。

如上圖所示,

  • mq-rebalance模塊用于支撐集群流量的自動負載均衡;
  • mq-monitor模塊進行監控指標的采集并且與vivo內部的監控系統打通;
  • mq-recover模塊主要用于業務流量的降級和恢復處理;
  • mq-live模塊用于集群的探活。

另外我們還基于社區的connector組件建設了RabbitMQ-connector,實現了全球消息路由能力。

后續我們計劃建設基于gRPC協議建設通用的消息網關實現與集群的交互,以此屏蔽不同的消息中間件選型。

3.3.3 運維能力平臺化提升運維效率

圖片

主要有三點實踐:

第一,RocketMQ集群配置平臺化管理。RocketMQ集群含有較多的配置項,默認是通過節點文件管理的,在大規模集群運維過程中會存在維護困難的問題。

通過平臺化管理可以確保集群內配置統一,節點在啟動時從平臺中讀取到所有的配置,避免在集群部署時需要登錄到機器進行配置維護,并且我們支持了集群配置的動態生效。

第二,運維操作平臺化,例如Broker節點的流量摘除與掛載、Topic一鍵擴縮容等直接通過平臺支撐,實現便捷運維。

第三,集群維護平臺化,我們將集群與Broker節點的關系維護在平臺中,并且在首次部署時分配Broker節點所在集群,這樣在平臺上就有清晰的集群信息,便于我們維護管理多套集群。

3.3.4 平臺監控告警能力建設

圖片

圖片

  • 一方面,我們為每個集群都建設了如上圖所示的監控大盤。
    在監控大盤中有每個集群的生產消費流量、業務生產消費統計、發送耗時等信息,支撐我們快速觀察集群的運行狀態,方便日常巡檢。
    消息中間件作為在線業務請求處理鏈路中的關鍵環節,高可用尤為關鍵。監控大盤中的發送耗時信息是我們認為觀察集群是否穩定運行的最關鍵的指標。
  • 另一方面,我們對集群構建了豐富的監控告警能力。
    如上圖所示,我們分別對主機維度、集群維度、Topic/Group維度、客戶端維度都做了監控指標埋點上報。
    通過豐富的監控告警,我們可以及時發現問題并快速介入處理問題,詳細的監控告警也可以幫助我們快速確認問題根源。

3.4 業務從RabbitMQ無感遷移到RocketMQ實戰經驗

3.4.1 使用RocketMQ替換RabbitMQ根因分析

圖片

分別從可用性保障性能容量功能特性對比RabbitMQ和RocketMQ。

  • 可用性保障方面,RabbitMQ集群無負載均衡能力,隊列流量實際由集群內某個節點承載,存在瓶頸。其次RabbitMQ存在腦裂問題,從我們的運維經驗看如果出現網絡故障集群通常無法自動恢復,并且可能丟失少量數據。
  • 性能方面,RabbitMQ集群整體性能較低,并且不支持水平擴展。
  • 容量方面,從我們的運維經驗看,當消息堆積到千萬后,RabbitMQ性能就會有所下降。在大量消息堆積開始消費后,因為RabbitMQ的背壓流控機制,最終可能會因為集群負載過大導致發送限流深圳發送阻塞。
  • 功能特性方面,RabbitMQ不支持消費異常延時重投遞功能,也不支持消息軌跡、事務消息、順序消息等特性。

而RocketMQ在可用性保障、性能、容量、功能特性方面相對于RabbitMQ都是更優的。

  • 可用性保障方面,RocketMQ采用多主多從的松耦合架構部署,主從間通過同步雙寫保障消息的可靠性和一致性。
  • 性能方面,Topic可以分布在多個Broker中,實現水平擴容,并且RocketMQ支持從從節點拉取消息,讀寫分離的設計很好的支持了業務讀取冷數據的訴求。
  • 容量方面,RocketMQ使用磁盤存儲,磁盤容量就是消息的存儲容量,利用從從節點拉取冷數據特性,海量消息堆積對消息寫入性能基本無影響。
  • 功能特性方面,RocketMQ支持了消息軌跡、事務消息、順序消息等特性。

綜合分析,RocketMQ可以更好的支撐互聯網業務的訴求。

3.4.2 AMQP消息網關架構支撐實現無感遷移

圖片

由于當前RabbitMQ已經有數千個服務接入,為了讓業務不修改代碼即可遷移到RocketMQ,我們建設了一個AMQP消息網關來實現MQ協議的解析和流量轉發。

如上圖所示,MQ-Proxy模塊用于解析AMQP協議,代理客戶端的生產消費請求。

RabbitMQ的元數據信息存在在集群中,并且與RocketMQ元數據概念存在差異,為此我們建設了MQ-Meta模塊用于維護Exchange/Queue極其綁定關系等元數據信息,并且Proxy模塊可以動態感知元數據變更。

另外,為了更好的支撐業務訴求,我們對AMQP協議進行了擴展,支持了局部有序和批量消費能力。

3.4.3 RabbitMQ和RocketMQ元數據概念映射

圖片

為了更好的整合RabbitMQ和RocketMQ,我們對它們的元數據進行了一一對應。

其中將RabbitMQ的Exchange映射為RocketMQ的Topic,Queue映射為Group,RoutingKey映射為消息頭的一個參數,VirtualHost映射為Namespace。

為什么將RoutingKey映射為消息頭的一個參數而不是Tag呢?這是因為RabbitMQ的RoutingKey是有模糊匹配過濾能力的,而RocketMQ的Tag是不支持模糊匹配的。

另外我們還通過擴展使得RocketMQ也支持了RoutingKey過濾。

在經過多輪優化后,在1KB消息體場景下,一臺8C16G的機器在單發送下可支撐超過九萬的TPS,單推送可以支撐超過六萬TPS,性能上很好的滿足了當前業務的訴求。

3.5 在線業務消息中間件的未來規劃

圖片

主要有兩部分:

一方面,我們希望可以調研升級到RocketMQ5.0版本架構,RocketMQ5.0的存算分離架構可以更好的解決我們當前遇到的存儲瓶頸問題,Pop消費可以幫助我們實現更好的消費負載均衡。

我們還希望可以基于gRPC協議建設統一的消息網關能力。

另一方面,我們希望可以探索消息中間件容器化部署,提供消息中間件的快速彈性擴縮容能力,更好的支持業務需求。

四、總結

回顧vivo消息中間件演進歷史,我們完成了在線業務消息中間件從RabbitMQ遷移到RocketMQ,大數據消息中間件正在從kafka演進為使用pulsar支撐。

我們理解消息中間件將繼續朝著云原生演進,滿足業務快速增長的訴求,充分利用云的優勢為業務提供極致的體驗。

責任編輯:龐桂玉 來源: vivo互聯網技術
相關推薦

2024-05-07 07:58:10

數據架構大數據中間件架構

2016-12-14 11:44:25

阿里Docker大數據

2024-03-28 12:55:00

消息中間件RocketMQ

2018-07-27 09:52:10

監控阿里智能

2020-07-23 14:03:09

數據中心數據網絡

2025-10-16 09:14:48

2022-12-30 14:14:51

數據中心服務器

2025-02-26 08:30:00

2011-12-16 09:54:17

網絡架構網絡架構系統架構系統

2020-12-11 19:52:06

數據中心超大規模數據中心

2023-02-14 11:24:36

2024-04-30 07:00:00

公共云云策略云計算

2020-09-25 09:52:48

機器學習人工智能計算機

2021-03-16 10:28:41

數據中心IT云計算

2020-02-10 08:00:38

AI 數據人工智能

2020-10-30 11:09:30

Pandas數據代碼

2025-09-10 02:11:00

AI基礎設施AIDC

2023-06-29 10:10:06

Rocket MQ消息中間件

2023-10-24 07:50:18

消息中間件MQ

2023-04-26 00:59:49

嗶哩嗶哩工程優化
點贊
收藏

51CTO技術棧公眾號

国产一区二区三区综合| 日本一区二区高清不卡| 粉嫩av一区二区三区免费野| 欧美精品人人做人人爱视频| 成人黄色激情视频| 91精品一区二区三区综合| 日韩欧美高清在线| 日av中文字幕| mm1313亚洲国产精品美女| www.日韩大片| 国产日韩精品入口| 日韩精品一区二区av| 日韩视频在线观看| 亚洲国产成人一区| 亚洲精品www.| 欧美aa一级| 亚洲欧美偷拍三级| 欧美一级二级三级九九九| 99久久久国产精品无码免费| 亚洲欧美日韩精品一区二区| 久久在线视频在线| 无码熟妇人妻av| 欧美视频三区| 欧美午夜电影在线播放| 农民人伦一区二区三区| 男人天堂久久久| 久久久久久久综合日本| 亚洲一区二区三区乱码aⅴ| 丁香社区五月天| 欧美日韩中文| www.久久久久| 一本加勒比北条麻妃| 色妞ww精品视频7777| 欧美日韩视频第一区| 欧美性久久久久| 亚洲淫性视频| 综合色天天鬼久久鬼色| 色综合久久av| 大片免费播放在线视频| www成人在线观看| 国产精品区二区三区日本| 亚洲天堂视频在线| 日韩avvvv在线播放| 97香蕉久久夜色精品国产| 婷婷色中文字幕| 国产精品97| 在线看福利67194| 精品无人区无码乱码毛片国产| 成人h动漫免费观看网站| 欧美精品久久一区| jizz18女人| www.26天天久久天堂| 91国产免费看| 黄色片一级视频| 中文在线免费视频| 欧美视频不卡中文| 日韩欧美国产免费| 亚洲涩涩在线| 丰满岳妇乱一区二区三区| 国产91xxx| 中国色在线日|韩| 欧美性少妇18aaaa视频| 老熟妇仑乱视频一区二区| 忘忧草在线日韩www影院| 欧美视频免费在线| www.四虎成人| 欧洲成人一区| 欧美性猛交xxxx黑人交| 国产色视频在线播放| 黄色精品视频| 欧美日韩免费一区二区三区| 激情五月俺来也| 99久久这里有精品| 日韩一区二区三区在线观看 | 日韩精品电影一区二区| 久久av超碰| 爽爽爽爽爽爽爽成人免费观看| 精品伦精品一区二区三区视频密桃| 清纯唯美日韩| 精品久久国产精品| 欧美日韩国产精品一区二区三区| 亚洲先锋成人| 欧美在线视频观看免费网站| 日批视频免费在线观看| 久久精品久久精品| 亚洲字幕一区二区| 熟妇人妻一区二区三区四区| 久久―日本道色综合久久| 亚洲午夜在线观看| 超鹏97在线| 精品久久久久久久大神国产| 天美星空大象mv在线观看视频| 日本成人在线网站| 精品美女被调教视频大全网站| 日本一区二区在线免费观看| japanese国产精品| 欧美黄色片免费观看| 欧美性猛交bbbbb精品| 国精产品一区一区三区mba视频| 97视频资源在线观看| 青春有你2免费观看完整版在线播放高清 | 亚洲精品一二三四| 神马午夜久久| 日韩视频免费在线观看| 日韩欧美一区二区一幕| 蜜臀av一区二区| 国产91视觉| av中文资源在线| 亚洲成人av电影| 免费涩涩18网站入口| 大伊香蕉精品在线品播放| 在线播放国产一区二区三区| 久久国产一级片| 日本不卡不码高清免费观看| 国产伦理久久久| 亚洲s色大片| 精品久久中文字幕久久av| www.com久久久| 免费电影一区二区三区| 欧美大学生性色视频| 国产精品xxxxxx| 99久久亚洲一区二区三区青草| 一区二区免费电影| av高清不卡| 亚洲国产91色在线| 91视频免费在线看| 久久成人久久鬼色| 日韩国产一区久久| videos性欧美另类高清| 亚洲大胆人体视频| 国产精品免费人成网站酒店| 日本免费新一区视频| 精品久久sese| tube8在线hd| 日韩午夜激情免费电影| 国产又粗又长又硬| 日韩不卡一区二区三区| 鲁丝一区鲁丝二区鲁丝三区| 黑人玩欧美人三根一起进| 在线播放国产精品二区一二区四区 | 天堂а√在线中文在线新版| 成人av电影在线观看| 亚洲国产一二三精品无码| 自拍偷拍亚洲| 日韩亚洲欧美中文高清在线| 最近中文在线观看| 国产日韩欧美一区二区三区乱码 | 日本美女一区二区| 欧美中文娱乐网| 一区一区三区| 日韩精品亚洲元码| 午夜影院在线看| www.一区二区| 成年人午夜视频在线观看| 精品淫伦v久久水蜜桃| 久久免费国产视频| 蜜桃av鲁一鲁一鲁一鲁俄罗斯的| 一区二区三区在线观看视频| 日本成人在线免费观看| 欧美日韩久久| 国产伦精品一区二区| bl视频在线免费观看| 亚洲国产成人精品女人久久久| 欧美a∨亚洲欧美亚洲| 91视频www| 免费日韩中文字幕| 欧美日韩在线二区| 国产精品色婷婷视频| 免费观看成人高潮| 8x福利精品第一导航| 久久中文免费视频| 成人禁用看黄a在线| 亚洲自偷自拍熟女另类| 国语产色综合| 国产乱肥老妇国产一区二| 精精国产xxxx视频在线| 欧美成人精品福利| 黄色免费av网站| 国产精品色婷婷| 特种兵之深入敌后| 在线综合亚洲| 天堂av一区二区| 网站一区二区| 97成人在线视频| 国产h在线观看| 日韩一区二区精品| av黄色在线播放| **性色生活片久久毛片| 黑森林av导航| 日韩高清在线观看| 国产欧美123| 岳的好大精品一区二区三区| 国产精品普通话| 新版中文在线官网| 亚洲性生活视频| 国产黄色片av| 日韩欧美国产中文字幕| 亚洲熟女毛茸茸| 99精品国产99久久久久久白柏| 人妻无码视频一区二区三区| 亚洲香蕉av| 久久久神马电影| 精品一区二区三区亚洲| 青青久久av北条麻妃海外网| 久久日韩视频| 亚洲女人天堂视频| av网站免费播放| 在线观看一区二区精品视频| 玖玖爱免费视频| 国产精品系列在线| 中文字幕无码人妻少妇免费| 国内一区二区视频| 激情六月丁香婷婷| 伊人久久大香线蕉av超碰演员| 亚洲国产一区二区三区在线| 日本欧美高清| 9a蜜桃久久久久久免费| 国产精品黄色片| 欧美在线视频在线播放完整版免费观看 | 亚洲精品aⅴ| 国产精品影片在线观看| 神马午夜在线视频| 欧美激情高清视频| 欧洲美女少妇精品| 亚洲午夜精品久久久久久性色| 丰满人妻av一区二区三区| 欧美日韩一级黄| 一级做a爰片久久毛片| 亚洲v日本v欧美v久久精品| 成人一级黄色大片| 国产精品久久久一区麻豆最新章节| 日韩片在线观看| 成人做爰69片免费看网站| 亚洲日本黄色片| 蜜乳av一区二区三区| 北条麻妃在线观看| 午夜在线播放视频欧美| 免费不卡av在线| 亚洲激情精品| 97超碰国产精品| 在线中文字幕亚洲| 欧美亚洲视频一区| 国产精品久久久久9999赢消| 亚洲草草视频| 日韩精品欧美| 亚洲精品欧洲精品| 俺要去色综合狠狠| 日本一区二区视频| 欧美日韩高清| 日韩美女一区| 成人影院天天5g天天爽无毒影院| 欧美日韩在线一二三| 最新国产一区| 免费国产一区二区| 国产va免费精品观看精品视频| 蜜桃视频在线观看成人| 美女久久久久| 视频一区二区精品| 91亚洲一区| 中国老女人av| 国内精品嫩模av私拍在线观看| 18禁裸男晨勃露j毛免费观看| 好看的av在线不卡观看| 日韩视频免费播放| 亚洲男女自偷自拍| 男人插女人下面免费视频| 青娱乐精品视频| 天天看片天天操| 国产成人综合网站| 国产伦精品一区三区精东| 99re这里只有精品视频首页| 欧美激情aaa| 国产精品成人免费| 久久久久久久久97| 日韩欧美高清视频| 中文字幕一区二区久久人妻| 91精品国产麻豆| 蜜桃av鲁一鲁一鲁一鲁俄罗斯的| 亚洲精品视频网上网址在线观看| 国产香蕉在线| 欧美成人精品在线| 九色porny自拍视频在线播放| 日本欧美一级片| 欧美综合社区国产| 国产精品一区二区在线观看 | 亚洲春色综合另类校园电影| 在线成人直播| 亚洲国产精品久久久久婷蜜芽| 日本欧美韩国一区三区| 久久久久亚洲av片无码v| 99国产欧美另类久久久精品| 91精品久久久久久久久久久久| 亚洲三级免费观看| 免费黄色网址在线| 欧美精品一二三| 天天操天天干天天舔| www.精品av.com| 人人草在线视频| 91久久久国产精品| 亚洲国产精品嫩草影院久久av| 一区二区三区四区视频在线| 亚洲人成在线影院| 99re精彩视频| 久久一留热品黄| 欧美精品一区二区成人| 91久久一区二区| 亚洲欧美强伦一区二区| 中文字幕日韩在线观看| 69av成人| 成人在线中文字幕| 欧美精美视频| 免费超爽大片黄| 国产一区二区三区美女| 最近中文字幕在线mv视频在线| 一区二区三区 在线观看视频| 波多野结衣绝顶大高潮| 亚洲成人久久网| 快射视频在线观看| 国产精品欧美日韩一区二区| 开心激情综合| 色婷婷777777仙踪林| 蜜臀久久久99精品久久久久久| 日本少妇xxxx| 夜夜爽夜夜爽精品视频| 91久久精品国产91性色69 | 亚洲综合精品一区二区| 精品一区不卡| 免费无码国产v片在线观看| 成人黄色网址在线观看| 私库av在线播放| 欧美一区二区三区思思人| av在线中文| 国产精品免费一区二区三区都可以| 欧美毛片免费观看| 亚洲色欲久久久综合网东京热| 国内久久精品视频| 男人天堂资源网| 欧美专区亚洲专区| 国产在线观看免费网站| 日韩av免费在线观看| 亚洲第一福利专区| 国产老熟妇精品观看| 成人久久视频在线观看| 国产乡下妇女做爰毛片| 亚洲精品在线三区| av在线私库| 久久精品国产精品国产精品污| 午夜日韩在线| 国产人妖在线观看| 亚洲午夜视频在线| 黄色av免费观看| 国内精品视频在线| 青青草久久爱| 激情五月开心婷婷| 国产视频在线观看一区二区三区 | 欧美24videosex性欧美| 国产成人成网站在线播放青青 | 九九九久久久久久| 91成人午夜| 免费看国产一级片| 久久久不卡网国产精品一区| 亚洲精品一区二三区| 中文字幕久热精品视频在线| 日韩成人在线电影| 99久re热视频精品98| 国产精品77777| 国产污污视频在线观看| 日韩精品亚洲元码| 51一区二区三区| 免费观看黄色大片| 成人免费看视频| chinese国产精品| 最新国产精品拍自在线播放| 精品国产18久久久久久二百| 黄色一级片黄色| 久久久精品国产免大香伊| 在线免费看毛片| 欧美国产日韩视频| 要久久电视剧全集免费| 九九精品久久久| 亚洲一区二区成人在线观看| 欧美91精品久久久久国产性生爱| 国产精品爽爽爽| 亚洲午夜久久久久久尤物| 日本少妇xxxxx| 日韩精品一区二区三区视频播放| 午夜激情在线播放| 免费成人进口网站| 久久久久久影视| а√中文在线资源库| 日韩av电影手机在线观看| 午夜精品久久99蜜桃的功能介绍| 波多野结衣一本| 精品国产在天天线2019| 日韩午夜视频在线| 18岁网站在线观看| 一区二区三区国产精品| 国产在线观看黄| 国产精品一级久久久| 久久精品99久久久|