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

淘寶notify-消息中間件

移動開發 Android
消息中間件是一種由消息傳送機制或消息隊列模式組成的最典型的中間件技術。通過消息中間件,應用程序或組件之間可以進行可靠的異步通訊來降低系統之間的耦合度,從而提高整個系統的可擴展性和可用性。

淘寶的notify是一個非常有特色的消息中間件。它用創新地方式解決了分布式事務的問題,用相對較低的成本,實現了跨micro service的最終一致性。這種把最終一致性用application queue而不是database replication queue的方式來實現,把IT技術層面的跨業務的事務變成一個業務層面的單據傳遞的概念,非常值得推廣。

消息中間件——分布式消息的廣播員

綜述

消息中間件是一種由消息傳送機制或消息隊列模式組成的最典型的中間件技術。通過消息中間件,應用程序或組件之間可以進行可靠的異步通訊來降低系統之間的耦合度,從而提高整個系統的可擴展性和可用性。

3.1、Notify

Notify是淘寶自主研發的一套消息服務引擎,是支撐雙11最為核心的系統之一,在淘寶和支付寶的核心交易場景中都有大量使用。消息系統的核心作用就是三點:解耦,異步和并行。下面讓我以一個實際的例子來說明一下解耦異步和并行分別所代表的具體意義吧:

假設我們有這么一個應用場景,為了完成一個用戶注冊淘寶的操作,可能需要將用戶信息寫入到用戶庫中,然后通知給紅包中心給用戶發新手紅包,然后還需要通知支付寶給用戶準備對應的支付寶賬號,進行合法性驗證,告知sns系統給用戶導入新的用戶等10步操作。

那么針對這個場景,一個最簡單的設計方法就是串行的執行整個流程,如圖3-1所示:

這種方式的最大問題是,隨著后端流程越來越多,每步流程都需要額外的耗費很多時間,從而會導致用戶更長的等待延遲。自然的,我們可以采用并行的方式來完成業務,能夠極大的減少延遲,如圖3-2所示。

但并行以后又會有一個新的問題出現了,在用戶注冊這一步,系統并行的發起了4個請求,那么這四個請求中,如果通知SNS這一步需要的時間很長,比如需要10秒鐘的話,那么就算是發新手包,準備支付寶賬號,進行合法性驗證這幾個步驟的速度再快,用戶也仍然需要等待10秒以后才能完成用戶注冊過程。因為只有當所有的后續操作全部完成的時候,用戶的注冊過程才算真正的“完成”了。用戶的信息狀態才是完整的。而如果這時候發生了更嚴重的事故,比如發新手紅包的所有服務器因為業務邏輯bug導致down機,那么因為用戶的注冊過程還沒有完全完成,業務流程也就是失敗的了。這樣明顯是不符合實際的需要的,隨著下游步驟的逐漸增多,那么用戶等待的時間就會越來越長,并且更加嚴重的是,隨著下游系統越來越多,整個系統出錯的概率也就越來越大。

通過業務分析我們能夠得知,用戶的實際的核心流程其實只有一個,就是用戶注冊。而后續的準備支付寶,通知sns等操作雖然必須要完成,但卻是不需要讓用戶等待的。

這種模式有個專業的名詞,就叫最終一致。為了達到最終一致,我們引入了MQ系統。業務流程如下:

主流程如圖3-3所示:

 

圖3-3-用戶注冊流程-引入MQ系統-主流程

異步流程如圖3-4所示:

 

圖3-4-用戶注冊流程-引入MQ系統-異步流程

#p#

核心原理

Notify在設計思路上與傳統的MQ有一定的不同,他的核心設計理念是

為了消息堆積而設計系統

無單點,可自由擴展的設計

下面就請隨我一起,進入到我們的消息系統內部來看看他設計的核心原理

為了消息堆積而設計系統在市面上的大部分MQ產品,大部分的核心場景就是點對點的消息傳輸通道,然后非常激進的使用內存來提升整體的系統性能,這樣做雖然標稱的tps都能達到很高,但這種設計的思路是很難符合大規模分布式場景的實際需要的。

在實際的分布式場景中,這樣的系統會存在著較大的應用場景瓶頸,在后端有大量消費者的前提下,消費者出現問題是個非常常見的情況,而消息系統則必須能夠在后端消費不穩定的情況下,仍然能夠保證用戶寫入的正常并且TPS不降,是個非常考驗消息系統能力的實際場景。

也因為如此,在Notify的整體設計中,我們最優先考慮的就是消息堆積問題,在目前的設計中我們使用了持久化磁盤的方式,在每次用戶發消息到Notify的時候都將消息先落盤,然后再異步的進行消息投遞,而沒有采用激進的使用內存的方案來加快投遞速度。

這種方式,雖然系統性能在峰值時比目前市面的MQ效率要差一些,但是作為整個業務邏輯的核心單元,穩定,安全可靠是系統的核心訴求。

無單點,可自由擴展的設計

圖3-5展示了組成Notify整個生態體系的有五個核心的部分。

發送消息的集群這主要是業務方的機器,這些APP的機器上是沒有任何狀態信息的,可以隨著用戶請求量的增加而隨時增加或減少業務發送方的機器數量,從而擴大或縮小集群能力。

配置服務器集群(Config server)這個集群的主要目的是動態的感知應用集群,消息集群機器上線與下線的過程,并及時廣播給其他集群。如當業務接受消息的機器下線時,config server會感知到機器下線,從而將該機器從目標用戶組內踢出,并通知給notify server,notify server 在獲取通知后,就可以將已經下線的機器從自己的投遞目標列表中刪除,這樣就可以實現機器的自動上下線擴容了。

消息服務器(Notify Server)消息服務器,也就是真正承載消息發送與消息接收的服務器,也是一個集群,應用發送消息時可以隨機選擇一臺機器進行消息發送,任意一臺server 掛掉,系統都可以正常運行。當需要增加處理能力時,只需要簡單地增加notify Server就可以了

存儲(Storage)Notify的存儲集群有多種不同的實現方式,以滿足不同應用的實際存儲需求。針對消息安全性要求高的應用,我們會選擇使用多份落盤的方式存儲消息數據,而對于要求吞吐量而不要求消息安全的場景,我們則可以使用內存存儲模型的存儲。自然的,所有存儲也被設計成了隨機無狀態寫入存儲模型以保障可以自由擴展。

消息接收集群業務方用于處理消息的服務器組,上下線機器時候也能夠動態的由config server 感知機器上下線的時機,從而可以實現機器自動擴展。

3.2、Notify雙11準備與優化

在雙11的整個準備過程中,Notify都承載了非常巨大的壓力,因為我們的核心假定就是后端系統一定會掛,而我們需要能夠承載整個交易高峰內的所有消息都會堆積在數據庫內的實際場景。

在多次壓測中,我們的系統表現還是非常穩定的,以60w/s的寫入量堆積4.5億消息的時候,整個系統表現非常淡定可靠。在真正的大促到來時,我們的后端系統響應效率好于預期,所以我們很輕松的就滿足了用戶所有消息投遞請求,比較好的滿足了用戶的實際需要。

3.3、MetaQ

METAQ是一款完全的隊列模型消息中間件,服務器使用Java語言編寫,可在多種軟硬件平臺上部署。客戶端支持Java、C++編程語言,已于2012年3月對外開源,開源地址是:http://metaq.taobao.org/。MetaQ大約經歷了下面3個階段

在2011年1月份發布了MetaQ 1.0版本,從Apache Kafka衍生而來,在內部主要用于日志傳輸。

在2012年9月份發布了MetaQ 2.0版本,解決了分區數受限問題,在數據庫binlog同步方面得到了廣泛的應用。

在2013年7月份發布了MetaQ 3.0版本,MetaQ開始廣泛應用于訂單處理,cache同步、流計算、IM實時消息、binlog同步等領域。MetaQ3.0版本已經開源,參見這里

綜上,MetaQ借鑒了Kafka的思想,并結合互聯網應用場景對性能的要求,對數據的存儲結構進行了全新設計。在功能層面,增加了更適合大型互聯網特色的功能點。

MetaQ簡介

 

圖3-6-MetaQ整體結構

如圖3-6所示,MetaQ對外提供的是一個隊列服務,內部實現也是完全的隊列模型,這里的隊列是持久化的磁盤隊列,具有非常高的可靠性,并且充分利用了操作系統cache來提高性能。

是一個隊列模型的消息中間件,具有高性能、高可靠、高實時、分布式特點。

Producer、Consumer、隊列都可以分布式。

Producer向一些隊列輪流發送消息,隊列集合稱為Topic,Consumer如果做廣播消費,則一個consumer實例消費* * 這個Topic對應的所有隊列,如果做集群消費,則多個Consumer實例平均消費這個topic對應的隊列集合。

能夠保證嚴格的消息順序

提供豐富的消息拉取模式

高效的訂閱者水平擴展能力

實時的消息訂閱機制

億級消息堆積能力

MetaQ存儲結構

MetaQ的存儲結構是根據阿里大規模互聯網應用需求,完全重新設計的一套存儲結構,使用這套存儲結構可以支持上萬的隊列模型,并且可以支持消息查詢、分布式事務、定時隊列等功能,如圖3-7所示。

 

圖3-7-MetaQ存儲體系

#p#

MetaQ單機上萬隊列

MetaQ內部大部分功能都靠隊列來驅動,那么必須支持足夠多的隊列,才能更好的滿足業務需求,如圖所示,MetaQ可以在單機支持上萬隊列,這里的隊列全部為持久化磁盤方式,從而對IO性能提出了挑戰。MetaQ是這樣解決的

Message全部寫入到一個獨立的隊列,完全的順序寫

Message在文件的位置信息寫入到另外的文件,串行方式寫。

通過以上方式,既做到數據可靠,又可以支持更多的隊列,如圖3-8所示。

 

圖3-8-MetaQ單機上萬隊列

MetaQ與Notify區別

Notify側重于交易消息,分布式事務消息方面。

MetaQ側重于順序消息場景,例如binlog同步。以及主動拉消息場景,例如流計算等。

3.4、MetaQ雙11準備與優化

Notify 交易消息轉 MetaQ 方案改進

MetaQ 交易集群主要是 Notify 交易消息的一個鏡像,舊有的方案是通過 Notify-Client 訂閱 Notify 交易消息,然后再轉投到 MetaQ 集群,這個方案的缺點:1. 通過消息訂閱的方式給 Notify 集群帶來比較大的壓力 2. 一旦 MetaQ 集群處理不及時會給 Notify 造成消息的堆積,從而帶來連鎖不良效應。新的方案則是從Notify DB直接拉取binlog到MetaQ,它帶來的優勢: 1. 解放 NotifyServer 集群的壓力;2. 通過 binlog 批量處理可以提升系統的吞吐量。

交易集群低延遲優化

天貓直播間,旨在通過實時獲取活動當天的交易數據,通過實時流計算的方式,及時、準確的展示各業務數據。它的特點就是數據全而準確、實時性要求較高。而在全鏈路壓測過程中發現從 Notify Mysql binlog 獲取數據時,出現較大的延遲,最嚴重的延遲高達4h+,這顯然是不合系統需求的。基于這些問題,我們在 Notify Mysql 端做了很多的優化:

Mysql 數據庫實例擴容,從而提高集群的整體吞吐量;

對 binlog 的存放位置進行優化,將數據存儲以及 binlog 存儲進行分離,從而發揮 DB 的最大寫性能;

由于 MySQL 的 binlog 操作存在鎖操作,優化了 MySQL 生成 binlog 的配置,保證了拉 binlog 無延時。

針對不同集群運行參數調優

根據業務的特點,對不同集群的運行參數調優,如批量拉取大小,刷盤方式,數據有效期等等;同時對io調度、虛擬內存等參數進行調優,以提供更為高效的堆積。

監控與實時告警

任何一個值得信賴的系統,最低限度是需要做到及時發現并處理異常,在第一時間排除故障發生的可能,從而提高產品的可用性。在雙十一活動之前,我們實現了由 MetaQ 系統內部,根據集群狀態,各消息的業務數據指標進行監控統計并主動告警,同時還能通過 Diamond 做到動態調整,從而提高監控的及時性以及靈活性。

回顧雙十一活動當日,淘寶消息寫入總量112億,消息投遞總量220億,支付寶消息寫入總量24億,消息投遞總量24億。其中實時直播間集群消息寫入峰值為13.1w,消息投遞峰值為27.8w。

從總體上看,我們的前期準備還是比較充分的,MetaQ 各集群在高峰期表現穩定,全天表現很平穩,個別訂閱組對消息進行重溯,部分消息有少量的堆積,但都沒有對系統造成影響,效果還是非常好的。75%的交易在聚石塔上完成,實時直播間交易統計延遲在1s左右,加減庫存做到零超賣。

小結

目前分布式消息中間件產品已經服務于整個集團,支持了阿里集團各個公司的500多個業務應用系統。每日處理海量消息超350億次,保證所有交易數據高可靠,高性能,分布式事務處理,是中間件團隊最老牌的中間件產品之一。

補充閱讀:Notify實現分布式事務的方式

資料來源:http://club.alibabatech.org/resource_detail.htm?topicId=61

業務操作和消息存儲都在本地事務域進行,不存在跨資源的事務。

提交/回滾消息有可能失敗,系統會處于短暫的不一致狀態

Broker會主動發送Check消息,確認消息是否提交或回滾

#p#

最終一致

將分布式事務分解在兩個本地事務中

客戶端需要付出的代價

實現CheckMessageListener接口

延伸閱讀:MetaQ在雙十二彩票中的運用

原帖鏈接:http://jm-blog.aliapp.com/?p=3405&utm_source=tuicool

雙十二大促是淘寶集市的年終促銷活動,活動當天掃描首頁二維碼贈送一注彩票的活動更是讓大家“玩”了一把。面對瞬間的數倍于往常的峰值,如何讓用戶有一個良好的體驗,如何保證系統的穩定運行,讓我們來揭秘這一切。

歸納一下系統需要做到如下幾點:

RT足夠短

壓力分布均勻

 

復雜邏輯分離,異步話

系統結構圖

大體分為兩個部分:活動系統,彩票系統,他們之間通過消息驅動。

活動系統里面只更新一個彩票分配的狀態,數據更新成功就返回給用戶,邏輯足夠簡單能保證RT非常短。彩票系統負責真正的彩票出票和更新用戶狀態等一些耗時操作。

用戶在首頁掃描二維碼發起對活動系統的請求,活動系統更新彩票分配狀態,產生一條消息,立即返回并。彩票系統收到這個消息完成后續出票等一些的業務操作。整個過程是通過MetaQ提供的消息服務驅動完成。活動的時候會有大量的請求涌進活動系統,會產生大量的消息,預估qps達到24w;并且消息不可丟失,確保用戶都能領到一注彩票;活動系統,彩票系統業務復雜度相差較大,處理能力也相差較大,可能會出現大量的堆積;為了讓用戶有個較好的體驗,消息的消費也需要足夠的及時。綜上對MetaQ有這么一些挑戰:

高吞吐量

數據可靠

 

高效堆積 消息投遞足夠低延遲

下面介紹一下MetaQ如何做到這些的。

MetaQ簡介

METAQ是一款完全的隊列模型消息中間件,服務器使用Java語言編寫,可在多種軟硬件平臺上部署。客戶端支持Java、C++編程語言,已于2012年3月對外開源,開源地址。MetaQ的設計目標是高吞吐量,高效堆積。完全的隊列模型還提供了順序消息,消息回溯等一些特性。

基本概念

Topic 消息主題

Partition 分區,代表一個消費隊列 (一個Topic可以劃分為多個分區,分區數越多并行度越大,支持的Qps越高)

Group 消費分組,代表一個消費集群

MetaQ對外提供的是一個隊列服務,內部實現也是完全的隊列模型,這里的隊列是持久化的磁盤隊列,具有非常高的可靠性,并且充分利用了操作系統cache來提高性能。這些特性都源于存儲層的設計。

MetaQ存儲結構

MetaQ的存儲結構是根據阿里大規模互聯網應用需求,完全重新設計的一套存儲結構,使用這套存儲結構可以支持上萬的隊列模型,并且可以支持消息查詢、分布式事務、定時隊列等功能,如圖3所示。

存儲層可以大致分為數據文件(CommitLog)和索引文件兩部分。數據文件保存了所有的消息的內容,索引文件保存了消息所在數據文件的偏移量。消息數據不區分Topic,順序的append到CommitLog,索引文件按照Topic-Partition維度組織,不同分區的消息append到不同索引隊列里面。

消息寫入

客戶端發送一條消息,數據首先會寫到文件緩存中,同時派發一個寫索引請求;異步的構建消息索引。

消息讀取

客戶端讀取消息,根據索引的位置找到需要讀取的消息的物理位置和消息長度,從CommitLog中讀取數據,通過文件緩存來加速消息的讀取。通常熱數據都在緩存中,無需IO操作;非熱數據,會觸發缺頁中斷,數據從磁盤加載到文件緩存中,直接寫到socket緩沖區,避免數據進入Java堆。

數據刷盤

刷盤后數據最終持久化到磁盤。刷盤方式分為兩種方式:同步刷盤,數據寫入緩存后立即刷盤,確保數據落盤后返回客戶端,MetaQ在同步刷盤過程中也做了一定優化避免過多的性能損失;異步刷盤,數據批量定時的刷到磁盤。

數據清理

消息數據按照文件有效期定時做清理。

數據復制

數據可靠性要求很高的應用,可通過數據復制保證數據的可靠。MetaQ提供兩種數據同步的方式:同步雙寫,數寫入到主機后會同時寫到備機,主備都寫成功才返回客戶端成功,主備間數據無延遲,MetaQ有一套自己的主備間高效數據復制方案;異步復制,數據寫到主機后返回客戶端成功,主備間異步同步,主備間存在一定的延遲。

MetaQ單機上萬隊列

MetaQ的大部分功能都是靠隊列來驅動,以文件的方式存儲,通過內存映射對數據進行操作。所有的消息都是順序的寫到數據文件(CommitLog),完全順序的寫入,避免隨機IO;消息索引按照Topic和Partition的維度區分串行的寫到索引文件。通過這種這種組織方式可以實現單機上萬隊列,如圖4所示。

數據流圖

消息數據首先寫入到Java堆,然后在寫入到文件緩存,在根據具體的刷盤策略Flush到磁盤;消費消息的時候如果是熱數據則直接從系統緩存寫到socket發到遠端;如果非熱數據則由系統產生缺頁中斷將數據從磁盤加載到系統緩存在寫到socket,數據不進應用程序內存空間。內存的管理,頁面的換入換出都是由OS來管理的。同時消息的拉取也是批量的,一次處理多條數據,盡量減少往返的時間。

MetaQ性能依賴于系統內存分配,磁盤IO的有效利用,所以我們也對操作系統內存分配,臟頁會寫策略,以及IO調度算法做了一些調優,讓資源的分配耗時趨于平穩,堆積的時候保持較高的吞吐量。

#p#

負載均衡

發送端負載

默認發送端通過輪詢的方式向broker寫消息,如圖6所示;也可以自行指定消息發到哪里。

消費端負載

默認是消費集群機器均分所有的消費隊列。余下的部分由靠前的消費者消費,如圖7所示。消費端負載均很也可以定制,如同機房優先等。

責任編輯:chenqingxiang 來源: taowen 2k
相關推薦

2011-11-28 17:53:55

淘寶aDev技術沙龍

2023-06-29 10:10:06

Rocket MQ消息中間件

2023-10-24 07:50:18

消息中間件MQ

2022-11-02 10:08:46

分布式高并發消息中間件

2021-12-14 10:39:12

中間件ActiveMQRabbitMQ

2022-08-09 08:31:29

RocketMQ消息中間件

2023-05-08 08:09:26

路由元信息謂詞

2024-01-24 08:19:02

Stream應用場景注解

2022-02-13 23:04:28

RedisRabbitMQKafka

2022-10-21 10:48:17

消息中間件互聯網應用協議

2019-07-19 07:56:13

消息隊列消息代理消息中間件

2023-10-16 12:25:48

2024-07-11 11:17:00

消息隊列Java

2019-12-13 10:32:56

開源消息中間件

2019-11-18 09:58:11

中間件投遞模式

2022-09-21 16:09:28

消息中間件

2022-12-27 17:56:40

ack機制RocketMQ

2022-10-28 13:33:05

Push模式互聯網高并發

2011-05-24 15:10:48

2021-02-11 08:21:02

中間件開發CRUD
點贊
收藏

51CTO技術棧公眾號

亚州男人的天堂| 国产黄a三级三级| 国产欧美黑人| 国产suv精品一区二区三区| 精品自在线视频| 久久久久xxxx| 国产网红在线观看| 91蜜桃视频在线| 国产精品精品视频一区二区三区| 黄色国产在线播放| 国产精品久久久久久久久久辛辛 | 永久域名在线精品| 国产欧美久久久| 99热精品在线观看| 原创国产精品91| 黑人性生活视频| 欧美aa免费在线| 国产精品麻豆久久久| 99热在线播放| 亚洲国产av一区二区三区| 国产精品久久占久久| 91麻豆精品国产91久久久久久久久| 男人天堂a在线| 国产在线播放av| 国产成人av电影在线| 日本欧美在线视频| 免费看一级大片| 女厕嘘嘘一区二区在线播放| 欧美日韩一区二区三区免费看| 中国一级大黄大黄大色毛片| 免费在线黄色网址| 国产成人在线视频网址| 91av成人在线| 黄色片网站在线播放| 精品视频高潮| 欧美男生操女生| 1024精品视频| 国产三线在线| 国产精品国产三级国产专播品爱网| 国产精品视频一区二区三区经| 中文字幕日本视频| 国产精品久久久久久久久久妞妞 | 9色在线视频| 成人黄色在线视频| 91久久精品日日躁夜夜躁国产| 国产一级片视频| jiujiure精品视频播放| 日韩精品在线观| 欧美高清精品一区二区| www.精品国产| 欧美性视频一区二区三区| 日日橹狠狠爱欧美超碰| av丝袜在线| 亚洲国产日韩a在线播放| 日本一本草久p| 免费av在线播放| 中文字幕免费在线观看视频一区| 久久国产日韩欧美| 午夜视频在线播放| 99国产精品久久| 久久精品成人一区二区三区蜜臀| 老牛影视av牛牛影视av| 99久精品国产| 另类视频在线观看+1080p| 天天摸天天干天天操| 91在线观看免费视频| 免费一区二区三区| 国产粉嫩一区二区三区在线观看| 日本一二三不卡| 天堂资源在线亚洲资源| av小片在线| 国产精品成人免费| 法国空姐在线观看免费| 色在线视频网| 亚洲成av人片在线观看无码| 97视频久久久| 日本电影欧美片| 在线一区二区三区| 五月婷婷之婷婷| 国产精品高清一区二区| 精品国产乱码久久久久久牛牛| 性农村xxxxx小树林| 亚洲黄页网站| 中文字幕亚洲精品| 欧美精品色哟哟| 性一交一乱一区二区洋洋av| 国产精品成人va在线观看| 一卡二卡三卡在线观看| 福利一区二区在线观看| 久久一区二区三区av| av在线播放网| 一区二区三区免费在线观看| 精品国产免费av| 日韩毛片网站| 日韩av在线导航| 蜜桃视频最新网址| 日韩视频三区| 国产欧美精品日韩精品| 日本激情一区二区三区| 国产精品久久二区二区| 妞干网在线观看视频| 亚洲成人va| 精品国产乱码久久久久久久| 四虎永久免费影院| 欧美一区二区三区久久精品茉莉花| 91精品国产91久久久久久吃药| 一级特黄aaa| 91色视频在线| 老司机av福利| 芒果视频成人app| 日韩欧美国产一区在线观看| wwwww黄色| 9色精品在线| 91免费福利视频| 黄网在线观看| 亚洲高清三级视频| 日本精品一区在线| 婷婷五月色综合香五月| 久久中文字幕视频| 亚洲午夜无码久久久久| thepron国产精品| 日韩视频一二三| 成人黄色图片网站| 亚洲精品国产福利| 国产一级片免费观看| 狠狠色丁香九九婷婷综合五月| 麻豆av一区二区| 青草在线视频| 欧美一区二区人人喊爽| 国产精品理论在线| 久久精品麻豆| 精品欧美国产| 99色在线观看| 欧美xxxx老人做受| 日韩欧美123区| 久久国产精品99久久久久久老狼| 欧美婷婷久久| 欧美片第一页| 亚洲欧美日本精品| 久久久久久久久久免费视频| 国产91丝袜在线18| 成年人视频网站免费| 国产精品一区免费在线 | 啪啪一区二区三区| 日韩精品一级二级| 美女黄毛**国产精品啪啪| 影音先锋在线视频| 日韩手机在线导航| 欧美国产日韩综合| 国产精品中文字幕欧美| 粉嫩av一区二区三区天美传媒| 欧美天堂一区二区| 色悠悠国产精品| 亚洲视频在线观看一区二区| 中文字幕不卡的av| 亚洲妇熟xx妇色黄蜜桃| 亚洲成av人片一区二区密柚| 91香蕉国产在线观看| 国产精品久久久久久福利| 欧美日韩久久久| 5566中文字幕| 国产一区二区伦理片| 国产免费内射又粗又爽密桃视频| 国产精品免费精品自在线观看| 久久久国产精品亚洲一区| 国产老女人乱淫免费| 亚洲精品成人精品456| 女王人厕视频2ⅴk| 欧美变态tickling挠脚心| 日韩成人三级视频| 极品一区美女高清| 热久久美女精品天天吊色| 国产在线91| 欧美精品粉嫩高潮一区二区| 欧美一级片在线视频| 国产麻豆精品视频| 免费看黄在线看| 网红女主播少妇精品视频| 国产精品91在线观看| 欧美69xxx| 日韩免费一区二区三区在线播放| 国产真人真事毛片| 久久久综合精品| 欧美一级小视频| 亚洲性感美女99在线| 美日韩免费视频| 在线观看欧美| 97超级碰在线看视频免费在线看| 国产三级在线看| 日韩欧美国产一区二区在线播放 | 国产精品theporn88| 中文在线资源| 欧美xxxx18国产| 九九热视频在线观看| 777奇米成人网| 国产精品999在线观看| 亚洲欧美日韩在线| 亚洲熟妇无码av| 国产乱码一区二区三区| 丝袜老师办公室里做好紧好爽| 无需播放器亚洲| 免费毛片一区二区三区久久久| 99精品女人在线观看免费视频 | 九九九在线观看| 亚洲私人黄色宅男| 一级黄色性视频| av电影天堂一区二区在线| 污视频网址在线观看| 亚洲欧美日韩视频二区| 最新av网址在线观看| 欧美日韩精品一区二区视频| 国产精品成人观看视频免费| 国语自产精品视频在线看抢先版结局 | 精品国产丝袜高跟鞋| 91精品国产综合久久精品性色| 看片网站在线观看| 99精品国产99久久久久久白柏| 99久久99精品| 久色成人在线| 男人的天堂avav| 亚洲一区二区三区| 久久资源亚洲| 亚洲视频三区| 26uuu亚洲伊人春色| 黑人玩欧美人三根一起进| 亚洲色图17p| 亚洲精品国产av| 日韩一卡二卡三卡国产欧美| 中文字幕在线天堂| 亚洲图片自拍偷拍| 久久久精品少妇| 国产精品久久久久久久久免费丝袜| 国产精品久久久久久在线观看| 久久精品国产精品亚洲精品| 久久久免费视频网站| 国产精品三上| 97视频在线免费| 国产高清久久| 亚洲视频在线二区| 婷婷五月色综合香五月| 国产精品高清一区二区三区| 99综合久久| 成人免费网站在线看| 欧美大片1688网站| 日韩av电影在线免费播放| 玛雅亚洲电影| 热99精品里视频精品| av在线小说| 久久久久久久久久久免费 | 久久久久久久久国产| 超鹏97在线| 亚洲色无码播放| 国产一级网站视频在线| 亚洲精品小视频| 黄色电影免费在线看| 亚洲欧美日韩图片| 国产h在线观看| 在线观看国产精品日韩av| 九九在线视频| 色噜噜狠狠色综合网图区| 成人在线观看黄色| 最新国产精品拍自在线播放| 久久久久久久久免费视频| www.久久撸.com| 成人免费看片| 久色乳综合思思在线视频| av人人综合网| 91干在线观看| 日韩大片欧美大片| 国产激情视频一区| 日韩欧美专区| 91九色单男在线观看| 欧美a在线观看| 精品免费日产一区一区三区免费| 欧美一级全黄| 欧美日韩国产精品一区二区| 久久悠悠精品综合网| 日韩在线观看电影完整版高清免费| 国产一区日韩| 一区二区三区四区五区精品| 欧美日韩精品| 成熟丰满熟妇高潮xxxxx视频| 中文日韩欧美| 亚洲三级在线观看视频| 国产成人精品免费视频网站| 99久久人妻精品免费二区| 国产白丝精品91爽爽久久| 无码h肉动漫在线观看| 亚洲国产精品成人综合 | 青青久草在线| 色香阁99久久精品久久久| av影院在线| 国产精品video| 国产一区精品二区| 美乳视频一区二区| 97欧美在线视频| 成人免费在线网| 久久国产精品72免费观看| aaa黄色大片| 日本一区二区三区免费乱视频 | 欧美日韩中文在线| 在线观看毛片av| 欧美精品久久久久久久多人混战 | 狠狠色狠狠色综合| 中文字幕在线播放视频| 亚洲国产精品精华液2区45| 国产午夜在线播放| 欧美日韩久久久久久| 欧美熟妇交换久久久久久分类| 日韩视频亚洲视频| 爱啪啪综合导航| 成人网欧美在线视频| 久久99久久人婷婷精品综合 | 中文亚洲字幕| 性生交大片免费看l| 久久久久久久久久看片| 激情五月少妇a| 欧美高清视频在线高清观看mv色露露十八 | 91久久国产精品91久久性色| 精品久久久久久久久久久aⅴ| 日韩精品福利片午夜免费观看| 久久99伊人| 欧美性xxxx图片| 亚洲精品视频一区| 一级久久久久久| 亚洲欧美三级伦理| 国精产品一区一区三区mba下载| 国产精品免费久久久| 欧美女王vk| 黄色一级片在线看| 久久99精品国产.久久久久| 日本二区在线观看| 午夜精品福利在线| 国产探花精品一区二区| 最新国产精品亚洲| 欧美三区四区| 久久国产精品亚洲va麻豆| 中文在线不卡| 丰满岳乱妇一区二区 | 色偷偷久久一区二区三区| 色丁香婷婷综合久久| 欧美黄色片免费观看| 精品国产麻豆| 妞干网这里只有精品| 日韩av一级电影| 日本成人精品视频| 欧美亚洲综合色| 猫咪在线永久网站| 国产成人一区二| 神马影视一区二区| 男人添女人下部高潮视频在观看| 成人av综合在线| 动漫精品一区一码二码三码四码| 欧美亚洲动漫精品| 日本电影全部在线观看网站视频| 国产精品一区二区3区| 久久国产电影| 亚洲36d大奶网| 国产精品久久久久久福利一牛影视| 国产美女免费看| 久久国产天堂福利天堂| 爱情电影网av一区二区| 色爽爽爽爽爽爽爽爽| 国产中文字幕精品| 成人免费视频国产免费观看| 日韩免费福利电影在线观看| 成人免费网站在线观看视频| 99国产超薄肉色丝袜交足的后果| 在线成人欧美| 欧美无人区码suv| 日韩欧亚中文在线| 日本综合在线| 国产欧美一区二区三区在线看 | www.一区二区| 久久一区二区三区视频| 色婷婷**av毛片一区| 99久久这里有精品| 色婷婷精品国产一区二区三区| 久久国产视频网| 2018天天弄| 日韩欧美中文字幕精品| a毛片不卡免费看片| 精品一区二区国产| 老司机午夜精品99久久| 男人av资源站| 精品福利二区三区| 日本精品裸体写真集在线观看| 一本色道久久综合亚洲精品婷婷| 国产乱码精品一区二区三| 久久精品人妻一区二区三区| 亚洲男人的天堂网站| 惠美惠精品网| 中国黄色录像片| 97se亚洲国产综合在线| 国产裸体无遮挡| 91wwwcom在线观看| 日韩一区二区三区免费播放| 亚洲色偷偷色噜噜狠狠99网| 欧美自拍丝袜亚洲| 欧美成人三区|