1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

        一口氣說出 6 種實現(xiàn)延時消息的方案

        共 4622字,需瀏覽 10分鐘

         ·

        2022-05-27 14:15

        ????關(guān)注后回復(fù)?“進(jìn)群”?,拉你進(jìn)程序員交流群????

        前言

        延時消息(定時消息)指的在分布式異步消息場景下,生產(chǎn)端發(fā)送一條消息,希望在指定延時或者指定時間點(diǎn)被消費(fèi)端消費(fèi)到,而不是立刻被消費(fèi)。

        延時消息適用的業(yè)務(wù)場景非常的廣泛,在分布式系統(tǒng)環(huán)境下,延時消息的功能一般會在下沉到中間件層,通常是 MQ 中內(nèi)置這個功能或者內(nèi)聚成一個公共基礎(chǔ)服務(wù)。

        本文旨在探討常見延時消息的實現(xiàn)方案以及方案設(shè)計的優(yōu)缺點(diǎn)。

        實現(xiàn)方案

        1.基于外部存儲實現(xiàn)的方案

        這里討論的外部存儲指的是在 MQ 本身自帶的存儲以外又引入的其他的存儲系統(tǒng)。

        基于外部存儲的方案本質(zhì)上都是一個套路,將 MQ 和 延時模塊 區(qū)分開來,延時消息模塊是一個獨(dú)立的服務(wù)/進(jìn)程。延時消息先保留到其他存儲介質(zhì)中,然后在消息到期時再投遞到 MQ。

        當(dāng)然還有一些細(xì)節(jié)性的設(shè)計,比如消息進(jìn)入的延時消息模塊時已經(jīng)到期則直接投遞這類的邏輯,這里不展開討論。

        下述方案不同的是,采用了不同的存儲系統(tǒng)。

        基于 數(shù)據(jù)庫(如MySQL)

        基于關(guān)系型數(shù)據(jù)庫(如MySQL)延時消息表的方式來實現(xiàn)。

        CREATE?TABLE?`delay_msg`?(
        ??`id`?bigint?unsigned?NOT?NULL?AUTO_INCREMENT,
        ??`delivery_time`?DATETIME?NOT?NULL?COMMENT?'投遞時間',
        ??`payloads`?blob?COMMENT?'消息內(nèi)容',
        ??PRIMARY?KEY?(`id`),
        ??KEY?`time_index`?(`delivery_time`)
        )

        通過定時線程定時掃描到期的消息,然后進(jìn)行投遞。定時線程的掃描間隔理論上就是你延時消息的最小時間精度。

        優(yōu)點(diǎn):

        • 實現(xiàn)簡單;

        缺點(diǎn):

        • B+Tree索引不適合消息場景的大量寫入;

        基于 RocksDB

        RocksDB 的方案其實就是在上述方案上選擇了比較合適的存儲介質(zhì)。

        RocksDB 在筆者之前的文章中有聊過,LSM 樹更適合大量寫入的場景。滴滴開源的DDMQ中的延時消息模塊 Chronos 就是采用了這個方案。

        DDMQ 這個項目簡單來說就是在 RocketMQ 外面加了一層統(tǒng)一的代理層,在這個代理層就可以做一些功能維度的擴(kuò)展。延時消息的邏輯就是代理層實現(xiàn)了對延時消息的轉(zhuǎn)發(fā),如果是延時消息,會先投遞到 RocketMQ 中 Chronos 專用的 topic 中。

        延時消息模塊 Chronos 消費(fèi)得到延時消息轉(zhuǎn)儲到 RocksDB,后面就是類似的邏輯了,定時掃描到期的消息,然后往 RocketMQ 中投遞。

        這個方案老實說是一個比較重的方案。因為基于 RocksDB 來實現(xiàn)的話,從數(shù)據(jù)可用性的角度考慮,你還需要自己去處理多副本的數(shù)據(jù)同步等邏輯。

        優(yōu)點(diǎn):

        • RocksDB LSM 樹很適合消息場景的大量寫入;

        缺點(diǎn):

        • 實現(xiàn)方案較重,如果你采用這個方案,需要自己實現(xiàn) RocksDB 的數(shù)據(jù)容災(zāi)邏輯;

        基于 Redis

        再來聊聊 Redis 的方案。下面放一個比較完善的方案。

        • Messages Pool 所有的延時消息存放,結(jié)構(gòu)為KV結(jié)構(gòu),key為消息ID,value為一個具體的message(這里選擇Redis Hash結(jié)構(gòu)主要是因為hash結(jié)構(gòu)能存儲較大的數(shù)據(jù)量,數(shù)據(jù)較多時候會進(jìn)行漸進(jìn)式rehash擴(kuò)容,并且對于HSET和HGET命令來說時間復(fù)雜度都是O(1))
        • Delayed Queue是16個有序隊列(隊列支持水平擴(kuò)展),結(jié)構(gòu)為ZSET,value 為 messages pool中消息ID,score為過期時間(分為多個隊列是為了提高掃描的速度)
        • Worker 代表處理線程,通過定時任務(wù)掃描 Delayed Queue 中到期的消息

        這個方案選用 Redis 存儲在我看來有幾點(diǎn)考慮,

        • Redis ZSET 很適合實現(xiàn)延時隊列
        • 性能問題,雖然 ZSET 插入是一個 O(logn) 的操作,但是Redis 基于內(nèi)存操作,并且內(nèi)部做了很多性能方面的優(yōu)化。

        但是這個方案其實也有需要斟酌的地方,上述方案通過創(chuàng)建多個 Delayed Queue 來滿足對于并發(fā)性能的要求,但這也帶來了多個 Delayed Queue 如何在多個節(jié)點(diǎn)情況下均勻分配,并且很可能出現(xiàn)到期消息并發(fā)重復(fù)處理的情況,是否要引入分布式鎖之類的并發(fā)控制設(shè)計?

        在量不大的場景下,上述方案的架構(gòu)其實可以蛻化成主從架構(gòu),只允許主節(jié)點(diǎn)來處理任務(wù),從節(jié)點(diǎn)只做容災(zāi)備份。實現(xiàn)難度更低更可控。

        定時線程檢查的缺陷與改進(jìn)

        上述幾個方案中,都通過線程定時掃描的方案來獲取到期的消息。

        定時線程的方案在消息量較少的時候,會浪費(fèi)資源,在消息量非常多的時候,又會出現(xiàn)因為掃描間隔設(shè)置不合理導(dǎo)致延時時間不準(zhǔn)確的問題??梢越柚?JDK Timer 類中的思想,通過 wait-notify 來節(jié)省 CPU 資源。

        獲取中最近的延時消息,然后wait(執(zhí)行時間-當(dāng)前時間),這樣就不需要浪費(fèi)資源到達(dá)時間時會自動響應(yīng),如果有新的消息進(jìn)入,并且比我們等待的消息還要小,那么直接notify喚醒,重新獲取這個更小的消息,然后又wait,如此循環(huán)。

        2. 開源 MQ 中的實現(xiàn)方案

        再來講講目前自帶延時消息功能的開源MQ,它們是如何實現(xiàn)的

        RocketMQ

        RocketMQ 開源版本支持延時消息,但是只支持 18 個 Level 的延時,并不支持任意時間。只不過這個 Level 在 RocketMQ 中可以自定義的,所幸來說對普通業(yè)務(wù)算是夠用的。默認(rèn)值為“1s 5s 10s 30s 1m 2m 3m 4m 5m 6m 7m 8m 9m 10m 20m 30m 1h 2h”,18個level。

        通俗的講,設(shè)定了延時 Level 的消息會被暫存在名為SCHEDULE_TOPIC_XXXX的topic中,并根據(jù) level 存入特定的queue,queueId = delayTimeLevel – 1,即一個queue只存相同延時的消息,保證具有相同發(fā)送延時的消息能夠順序消費(fèi)。 broker會調(diào)度地消費(fèi)SCHEDULE_TOPIC_XXXX,將消息寫入真實的topic。

        下面是整個實現(xiàn)方案的示意圖,紅色代表投遞延時消息,紫色代表定時調(diào)度到期的延時消息:

        優(yōu)點(diǎn):

        • Level 數(shù)固定,每個 Level 有自己的定時器,開銷不大
        • 將 Level 相同的消息放入到同一個 Queue 中,保證了同一 Level 消息的順序性;不同 Level 放到不同的 Queue 中,保證了投遞的時間準(zhǔn)確性;
        • 通過只支持固定的Level,將不同延時消息的排序變成了固定Level Topic 的追加寫操作

        缺點(diǎn):

        • Level 配置的修改代價太大,固定 Level 不靈活
        • CommitLog 會因為延時消息的存在變得很大

        Pulsar

        Pulsar 支持“任意時間”的延時消息,但實現(xiàn)方式和 RocketMQ 不同。

        通俗的講,Pulsar 的延時消息會直接進(jìn)入到客戶端發(fā)送指定的 Topic 中,然后在堆外內(nèi)存中創(chuàng)建一個基于時間的優(yōu)先級隊列,來維護(hù)延時消息的索引信息。延時時間最短的會放在頭上,時間越長越靠后。在進(jìn)行消費(fèi)邏輯時候,再判斷是否有到期需要投遞的消息,如果有就從隊列里面拿出,根據(jù)延時消息的索引查詢到對應(yīng)的消息進(jìn)行消費(fèi)。

        如果節(jié)點(diǎn)崩潰,在這個 broker 節(jié)點(diǎn)上的 Topics 會轉(zhuǎn)移到其他可用的 broker 上,上面提到的這個優(yōu)先級隊列也會被重建。

        下面是 Pulsar 公眾號中對于 Pulsar 延時消息的示意圖。

        乍一看會覺得這個方案其實非常簡單,還能支持任意時間的消息。但是這個方案有幾個比較大的問題

        • 內(nèi)存開銷: 維護(hù)延時消息索引的隊列是放在堆外內(nèi)存中的,并且這個隊列是以訂閱組(Kafka中的消費(fèi)組)為維度的,比如你這個 Topic 有 N 個訂閱組,那么如果你這個 Topic 使用了延時消息,就會創(chuàng)建 N 個 隊列;并且隨著延時消息的增多,時間跨度的增加,每個隊列的內(nèi)存占用也會上升。(是的,在這個方案下,支持任意的延時消息反而有可能讓這個缺陷更嚴(yán)重)
        • 故障轉(zhuǎn)移之后延時消息索引隊列的重建時間開銷: 對于跨度時間長的大規(guī)模延時消息,重建時間可能會到小時級別。(摘自 Pulsar 官方公眾號文章)
        • 存儲開銷: 延時消息的時間跨度會影響到 Pulsar 中已經(jīng)消費(fèi)的消息數(shù)據(jù)的空間回收。打個比方,你的 Topic 如果業(yè)務(wù)上要求支持一個月跨度的延時消息,然后你發(fā)了一個延時一個月的消息,那么你這個 Topic 中底層的存儲就會保留整整一個月的消息數(shù)據(jù),即使這一個月中99%的正常消息都已經(jīng)消費(fèi)了。

        對于前面第一點(diǎn)和第二點(diǎn)的問題,社區(qū)也設(shè)計了解決方案,在隊列中加入時間分區(qū),Broker 只加載當(dāng)前較近的時間片的隊列到內(nèi)存,其余時間片分區(qū)持久化磁盤,示例圖如下圖所示:

        但是目前,這個方案并沒有對應(yīng)的實現(xiàn)版本。可以在實際使用時,規(guī)定只能使用較小時間跨度的延時消息,來減少前兩點(diǎn)缺陷的影響。另外,因為內(nèi)存中存的并不是延時消息的全量數(shù)據(jù),只是索引,所以可能要積壓上百萬條延時消息才可能對內(nèi)存造成顯著影響,從這個角度來看,官方暫時沒有完善前兩個問題也可以理解了。

        至于第三個問題,估計是比較難解決的,需要在數(shù)據(jù)存儲層將延時消息和正常消息區(qū)分開來,單獨(dú)存儲延時消息。

        QMQ

        QMQ提供任意時間的延時/定時消息,你可以指定消息在未來兩年內(nèi)(可配置)任意時間內(nèi)投遞。

        把 QMQ 放到最后,是因為我覺得 QMQ 是目前開源 MQ 中延時消息設(shè)計最合理的。里面設(shè)計的核心簡單來說就是 多級時間輪 + 延時加載 + 延時消息單獨(dú)磁盤存儲。

        QMQ的延時/定時消息使用的是兩層 hash wheel 來實現(xiàn)的。第一層位于磁盤上,每個小時為一個刻度(默認(rèn)為一個小時一個刻度,可以根據(jù)實際情況在配置里進(jìn)行調(diào)整),每個刻度會生成一個日志文件(schedule log),因為QMQ支持兩年內(nèi)的延時消息(默認(rèn)支持兩年內(nèi),可以進(jìn)行配置修改),則最多會生成 2 * 366 * 24 = 17568 個文件(如果需要支持的最大延時時間更短,則生成的文件更少)。

        第二層在內(nèi)存中,當(dāng)消息的投遞時間即將到來的時候,會將這個小時的消息索引(索引包括消息在schedule log中的offset和size)從磁盤文件加載到內(nèi)存中的hash wheel上,內(nèi)存中的hash wheel則是以500ms為一個刻度。

        總結(jié)一下設(shè)計上的亮點(diǎn):

        • 時間輪算法適合延時/定時消息的場景,省去延時消息的排序,插入刪除操作都是 O(1) 的時間復(fù)雜度;
        • 通過多級時間輪設(shè)計,支持了超大時間跨度的延時消息;
        • 通過延時加載,內(nèi)存中只會有最近要消費(fèi)的消息,更久的延時消息會被存儲在磁盤中,對內(nèi)存友好;
        • 延時消息單獨(dú)存儲(schedule log),不會影響到正常消息的空間回收;

        總結(jié)

        本文匯總了目前業(yè)界常見的延時消息方案,并且討論了各個方案的優(yōu)缺點(diǎn)。希望對讀者有所啟發(fā)。

        來源:juejin.cn/post/7052894117105238053

        -End-

        最近有一些小伙伴,讓我?guī)兔φ乙恍?面試題?資料,于是我翻遍了收藏的 5T 資料后,匯總整理出來,可以說是程序員面試必備!所有資料都整理到網(wǎng)盤了,歡迎下載!

        點(diǎn)擊??卡片,關(guān)注后回復(fù)【面試題】即可獲取

        在看點(diǎn)這里好文分享給更多人↓↓

        瀏覽 12
        點(diǎn)贊
        評論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報
        評論
        圖片
        表情
        推薦
        點(diǎn)贊
        評論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            国产成人片在线观看| 久操福利视频| av在线天堂网| 热久久国产| 婷婷手机在线| 美女毛片视频| 国产一区在线视频| 午夜福利资源| 18AV在线观看| 精品亚洲一区二区三区四区五区| 青娱乐国产av| 婷婷精品秘进入| 天天天日天天天操| 亚洲电影在线观看| 久久久久国产视频| 久久免费小视频| 免费欧美A片| 怡春院院成人免费视频| 亚洲美女网站免费观看网址 | x88AV吊钟奶熟女| 成年片| 91无码精品国产AⅤ| 亚洲小电影在线观看| 91爱爱| 91无码精品一区二区| 91福利导航| 伊人国产女| 99热国产在线观看| a级片在线观看| 国产精品人人| 内射一区二区| www.黄色| 色婷婷视频| 日韩操屄视频| 午夜三级视频| 亚洲中文字幕电影| 国产艹逼| 男女啪啪动态图| 天天cao| 操逼123首页| 久爱视频| 精品久久91| 亚洲精品乱码久久久久| 一区二区三区四区无码视频| 日本欧美在线观看| 在线观看日韩av| 91精品婷婷国产综合久久蝌蚪 | 中文字幕A片| 在线看v片| 免费看V片| 蜜桃av秘一区二区三区| 尻屄视频| 五月天福利导航| 精品成人电影| 亚洲香蕉在线观看| 色爽AV| 国产嫩苞又嫩又紧AV在线| 国产精品色在线| 91亚洲精华国产精华精华液| 爱爱高清视频| 欧洲毛片基地c区| 东京热久久综合色五月老师| 亚洲av免费在线观看| 日韩一区无码| 中国老熟女重囗味HDXX| 3p绿帽黑人看自己老婆| 日本毛片在线观看| 影音先锋国产AV| 免费91| 麻豆91蜜桃传媒在线观看| 九九成人免费视频| 中字幕视频在线永久在线观看免费| 免费中文字幕视频| 黄网国产手机在线观看| 色墦五月丁香| 日韩少妇| 91久久欧美极品XXXXⅩ| 中文字幕第五页| 91香蕉在线观看| 日韩成人无码电影| 爆操人妻| 中文字幕2018第一页| 做爰视频毛片蜜桃| 免费看黄色一级片| 国产精品视频免费在线观看| 视色网站| 中文区中文字幕免费看| 国产精品theporn| 狠狠狠狠狠狠狠狠狠| 成人做爰黄片视频免费| 国产精品色在线| 日本一区二区在线视频| 亚洲影音先锋在线| 秋霞欧美在线| 无码直播| 日韩中文字幕在线高清| 亚洲Av无码午夜国产精品色软件 | 精品中文字幕在线播放| 成人小视频十八禁免费观看| caobi999| 91视频爱爱| 国产探花视频在线免费观看| 韩国深夜福利视频| 懂色午夜福利一区二区三区| 欧美日韩视频| 婷婷色777777| 日韩精品一区二区三区免费观看高清| 国产精品天天AVJ精麻传媒| 亚洲日韩中文字幕| 欧洲尤物不卡播放六区| 专业操美女视频网站| 久热久| 亚洲国产成人精品女人久久久| 亚洲有码中文字幕| 91青青草| 国产成人性| 国产性爱自拍一下| 大橡胶伊人网| 农村新婚夜一级A片| 成人视频欧美| 蜜桃导航-精品导航| 亚洲影视中文字幕| 少妇熟女视频一区二区三区 | 亚洲视频在线免费播放| 日韩va中文字幕无码免费| 天天日天天干天天干| 日韩毛片网| 无码一区三区| 97人妻无码一区二区| 免费一级无码婬片A片APP直播 | 日韩精品一区二区三区四在线播放 | 污视频网站在线观看| 国产无码小视频| 牛牛精品一区二区| 无码av一区| 国产一卡二卡在线| 中文日韩字幕| 久久夜色精品国产欧美乱极品 | 午夜福利啪啪啪| 激情另类| 亚洲无码一卡| 另类老妇奶性生BBwBBw偷拍 | 国产无码AV在线| 内射欧美| 日韩欧美内射| 成人自拍视频在线观看| 五月天丁香社区| 欧美视频一区二区| 欧美日韩免费在线播放电影在线播放电影在线播放电影免费 | 亚洲人在线观看| va色婷婷亚洲在线| 日韩精品一| 久久久久久少妇| 欧美性猛交XXXXⅩXX| 亚洲A片一区二区三区电影网 | 国产色情视频| 天堂中文在线视频| 国产91在线视频| 操逼视频,黄色大全| 肏逼网站在线观看| 成人免费一级视频| 中文字幕国产一区| 亚洲字幕av| 97香蕉网| 女人AV天堂| 亚洲天堂精品在线观看| 欧美成人黄色电影| 人人操碰成人网| 99久久久久久久无码| 91在线电影| av手机在线| 水密桃网站| 大香蕉日逼| 在线国产视频| 欧美A视频在线观看| 亚洲伦理一区二区| 亚洲影音先锋在线| 国产视频激情| 四虎av在线| 午夜丁香| 乱伦天堂| 欧美大香蕉伊人网| 亚洲国产中文字幕在线播放| 最近日本中文字幕中文翻译歌词| 欧美婷婷综合| 婷婷午夜精品久久久久久性色AV| 在线黄色网| 中文字幕久久播放| 国产特黄视频| 成人午夜啪免费视频在线观看软件 | 国产日韩欧美在线观看| 亚洲无码电影视频| 久久久久久久久久久久国产精品 | 亚洲福利在线观看视频| 亚洲av资源| 日韩无码免费| 中文无码字幕视频| 91成人A片| 欧美日韩性爱网站| 女人AV天堂| 免费a片在线观看| 亚洲国产高清在线观看视频| 亚洲在线观看网站| 男女av网站| 白嫩外女BBwBBwBBw| 台湾无码在线| 欧美色综合| 国产伦子伦一级A片免费看老牛| 精品无码AV一区二区三区| 少妇4p| 男人天堂色男人| 亚洲a视频| 日国无码| 国产Av资源| 成人视频18+在线观看| 四虎永久在线精品| 人人澡人人澡| 最新日韩在线| 亚洲中文字幕在线无码| 欧美日韩成人一区二区三区| 男女视频网站| 蜜臀久久99精品久久久久久牛牛| 亚洲色成人网站www永久四虎| 人妻精品综合码| 超碰在线网站| 四虎国产| 欧美性爱中文字幕| 男女操逼视频网站免费| 人妻熟女在线视频| 国产精品中文| 亚洲日韩Av无码中文字幕美国 | www.91com| 国产小骚逼| 久操网站| 日韩二级片| 无码专区中文字幕| 亚洲无码视频免费在线观看| 高颜值呻吟给力| 亚洲色一| 久久熟女嫩草成人片免费| 正在播放国产精品| 蕉久中文字慕| 小黄片免费看| 豆花在线视频| 免费看一级无码成人片| 蜜桃网一区二区| 日日夜夜精选视频| 91人人在线| 人妻第一页| 乱伦91视频| 亚洲中文幕| 国产精品大全| 激情91| 在线成人视频网站大香蕉在线网站| 亚洲国产另类无码| 91蜜桃精品| 91午夜福利| 国内精品人妻无码久久久影院蜜桃 | 三级无码中文| 麻豆乱伦| 夜色精品视频| 色视频在线观看免费| 一起操在线| 大地8免费高清视频观看大全 | 中日韩免费视频| 久久久久久久国产| 欧洲在线观看| 黄色免费看视频| 99内射| 国产一级a毛一级a做免费的视频 | 国内免费AV| 亚洲第一黄色| 黄色视频大全在线观看| 国产伦精一品二品三品app| 操人妻视频| 精品免费囯产| 久久久波多野结衣| 老鸭窝在线观看视频| 男人天堂成人| 色777色| 无码成人A片在线观看| 91乱子伦国产乱子伦无码| 高潮喷水无码| 人妻熟女一区二区| 浪潮在线观看完整版| 国产三级性爱视频| 九哥草逼网| 天堂AV色| 五月天激情四射| 国产色无码网站www色视频| 91人妻人人澡人人爽人人精吕| 日韩逼逼| av在线一区二区| 国产毛片久久久久久国产毛片| 18禁一区二区| 国产A片视频| 人人操人人摸人人射| 日韩免费黄色视频| 九九偷拍视频| 色五月婷婷小说| 亚洲日韩免费观看| 欧美日逼视频| 无码乱| 内射无码专区久久亚洲| 男女怕怕网站| 黄色网页在线| 日韩成人一区| 久草在线资源| 国产亚洲婷婷| 高清无码做爱视频| 欧美性爱超碰| 成人做爰黄A片免费看| 久久AV片| 亚洲av二区| 精品欧美乱码久久久久久| 操逼网123| 动漫一区二区三区| 亚洲少妇一区| 色大香蕉伊人| 午夜骚影| 最新97色黄色精品高清网站| 大鸡巴草逼| 国产第一页在线| 日韩无码三级视频| 国产91探花秘入口| 日韩无码砖区| 国产丝袜人妖TS系列| 超碰av在线| 日韩精品无码一区二区三区| 黄色一级片免费看| 在线免费AV片| 婷婷国产AV| 亚洲一级免费免费在线观看| 久久久精品久久久| 国产女人18毛片水真多18精品| 亚洲一区二区三区免费视频| 熟妇人妻丰满久久久久久久无码 | 国产一级片网站| 在线观看黄片| 婷婷五月天性爱| 看毛片的网站| 精品一区二区三区四区五区六区七区八区九区 | 河南熟妇搡BBBB搡BBBB| 午夜一区二区三区| 亚洲制服中文字幕| 国产三级片网址| 四虎成人精品永久免费AV九九 | 无码69| 18岁毛片| 久草精品在线| 国产学生妹在线播放| 特级大毛片| 亚洲精品久久久蜜桃| 怡春院综合成人社区| 抽插免费视频| 精品无码一区二区| 国产不卡在线视频| 一区二区三区无码视频| 精品成人网| 免费婷婷| 18禁无码网站| 亚洲欧美在线观看视频| 伊人久久大香蕉国产| 成人做爰黄AAA片免费直播岛国| 黄片www.| 日本成人一区| 亚洲精品一区二区三区四区高清| 大肉大捧一出免费观看| 一级片黑人| 麻豆国产91在线播放| 青青草人人| 五月天无码在线| 人妻无码一区二区三区免费| 亚洲在线网站| 草逼美女| 99精品在线观看视频| 最新久欠一区二区免费看| 91视频网站在线| 欧美激情视频在线| 亚洲va欧洲va国产va不卡| 情趣视频网站| 国产Av高清| 大香蕉视频国产| 丰满人妻一区二区| 日韩潮喷| 最新在线中文字幕| 97在线免费| 久久久久三级片| 先锋影音成人资源| 人妻大屁股-91Porn| 高清无码高潮| 一本色道久久综合亚洲二区三区| 天天A片| 国产精品无码无套在线| 青青草原在线视频免费观看| 大香蕉在线观看视频| 丁香激情五月少妇| 91视频美女模特| 欧美色图综合| 成人黄色毛片视频| 色色色777| www.大香蕉伊人| 欧美黄片免费观看| 中文字幕36页| 婷婷操逼| 精品国产重口乱子伦| 男女精品一区| 国产91网| 日韩中文字幕区| 啪啪网站免费| 91丝袜在线| 日韩三级视频| 少妇高潮喷水视频| 4080yy午夜理论片成人| av一区二区三区四区| 奇米色播| 亚洲精品三级片| 日韩久久精品视频| 黄色激情网站| 五月丁香六月婷婷综合| 无码日韩成人| 在线观看免费成人网站| 九月丁香| 操大香蕉| 亚洲毛片网站| 久色性爱视频| 日本成人无码| 另类综合激情| 在线天堂网| 天天日夜夜拍| 一本色道88久久加勒比精品| 啪啪毛片| 中文字幕免费毛片| 日本操B| 福利视频三区| 美女裸体视频网站| 一区二区三区在线免费观看| 2018中文字幕第一页| 97爱爱| 蜜桃精品视频在线观看| 最美人妖系列国产Ts涵涵| 日毛片| 日韩精品丰满无码一级A片∴| 靠比免费| 狼人狠狠干| 一区二区免费在线观看| 免费在线观看黄| 五月天高清无码| 五月丁香婷婷开心| 97久久久| 免费久草视频| 久久久久久一| 亚洲AV无码成人精品涩涩麻豆| 91久久精品日日躁夜夜躁欧美| 亚洲任你操超碰在线| 性爱一级| 欧美一级AAA大片免费观看| 岛国无码在线观看| 色色激情五月天| 伊人久久大综合中文无码| 色五月天婷婷| 熟女少妇一区二区| 亚洲色在线视频| 成人亚洲AV日韩AV无码| 日本一级黄| 久久久精品影院| 久久穴| 亚洲成人无码视频在线观看| 精品國產一區二區三區久久蜜月| 亚洲超碰在线| jlzzzjlzzz国产免费观看| 在线观看高清无码中文字幕| a网站在线观看| 日批动态图| 国产美女操逼网站| 操B视频在线观看| 欧美3p视频| 99色综合网| 91麻豆成人| 国产91精品久久久天天| 亚洲中文字幕无码在线观看| 在线观看日韩| 日韩A∨视频| 做a视频| 懂色成人av影院| 中文字幕亚洲区| 亚洲黄色免费观看| 麻豆黄片| 婷婷五月在线视频| 老师搡BBBB搡BBB| 国产AV一区二区三区四区五区| 亚洲口爆| 欧美日韩成人一区二区三区| 日日夜夜天天综合| 无码天堂| 日韩欧美中文| 三p视频| 一级黄A片| 一区二区三区在线观看| 中文字幕乱码中文字幕电视剧| 午夜试看120秒体验区的特点 | 国产成人三级| 丁香五月天AV| 香蕉视频日韩| 中文大香蕉视频| 激情网站在线观看| 美女免费网站| 欧洲性爱视频在线观看| 西西4444WWW无视频| 欧美三级在线视频| 青娱乐亚洲精品| 在线无码视频观看| 特黄特色免费大片| 欧美色图15P| 在线18禁| 国产18水真多18精品| 精品无码一区二区人妻久久蜜桃| 欧美激情五月天| 囯产精品一区二区三区线一牛影视1| 欧美色图在线观看视频| 亚洲精品一区二区三区蜜桃| 韩国无码免费| 成人国产在线无码AV免费| 国产午夜福利视频在线观看 | 国产51视频| 超碰久草| 精品A区| 午夜av在线免费观看| 国产—级a毛—a毛免费视频| 午夜操逼| 九九这里有精品| 精品成人视频| 一级特黄毛片| 天天摸天天肏| 午夜激情网站| 午夜高清无码视频| 欧美性爱手机在线| 蜜臀久久99精品久久| 美女av免费| 久久久精品电影| 青青草视频黄| 上床视频网站| 国产中文字字幕乱码无限| 国产一区二区三区成人| 亚洲在线视频观看| 亚洲网站视频| 色天使视频| 国产成人精品久久二区二区91| 夜色321| 欧美爱爱网| 久久国产精品久久| 黄片视频国产| 色视频免费观看| 久久草视频在线播放| 韩国三级HD中文字幕2019年| 午夜av无码| 欧美特黄AAAAAAAAA片| 国产视频激情| 欧美色爽| 人人爱人人操人人爽| 狼友视频在在观看| 大香蕉伊人在线观看视频| 欧美性高潮| 色欲av网站| 奇米色播| 色av影音先锋无吗一区| 中文字幕一区二区三区四区五区| 国产在线观看一区二区| 青草视频在线免费观看| 中文字幕免费AV| 久久b| 色色色色网| 日本特级黄色毛片| 久久久久国产一区二区三区| 老熟女-ThePorn| 欧洲亚洲免费视频| 永久久久久久久| 99成人在线视频| 久久精品国产AV一区二区三区| 午夜一级性爱片| 色欲AV在线| 精品无码免费| 第四色激情网| 12一15女人A片毛| 精品999999| 日韩三区在线| 日韩成人AV在线播放| 日韩精品一区二区三区四区蜜桃视频 | 成人网肏逼视频| 三级片在线看| 亚洲一区在线播放| 国产精品久久久久久久久夜色| 国产中文在线视频| 天天爽夜夜爽夜夜爽精品| 中文字幕性爱电影| 日韩精品成人在线视频| www.在线播放| 国产又爽又黄免费视频网站| 99色在线| 丁香五月天在线视频| 欧美日韩亚洲综合| 国产女人高潮毛片| 日韩A片免费观看| 丰满的人妻一区二区10| 无码伦理电影| 自慰喷水流白浆中文字幕| 国产福利AV| 99热精品在线播放| 躁BBB躁BBB添BBBBBB| a4yy午夜福利| 九九久久99| 毛片操逼| 91av一区| 九九五月天| 蜜臂AV| 无码精品一区二区免费| 日韩不卡高清在线观看视频| 亚洲东方在线| 一级黄色蜜芽视频| 91一区| 亚洲AV成人无码网天堂| 国产十八岁在线观看| 内射无码专区久久亚洲| 无码一| 三级黄色毛片| 美女自慰网站免费| 国产精品AV在线观看| 久久国产热视频| 成人毛片18| 中文在线A∨在线| 在线观看中文字幕一区| 免费看黄色A片| av影音先锋| 国产婷婷精品| 91免费在线视频观看| 神马午夜av| 91大神免费观看| 北条麻妃一区二区三区| 青娱乐大香蕉| 亚洲精品久久久久中文字幕二区| 九九九色| 国产色AV| 国产精品成人AV片| 午夜精品18| 日本黄色小视频| 精品欧美一区二区精品久久| 久久成人网站| 色色色777| 97精品在线视频| 日本中文字幕在线播放| 黄色A片免费看| 黄色AV免费在线观看| 奇米影视狠狠干| 久久艹免费视频| 婷婷深爱五月| 91AV免费观看| 人人射在线| 亚洲人成色777777无码| 天堂俺去俺来也www久久婷婷| 亚洲视频网站在线观看| 草草国产| 欧美一区二区三区不卡| 成人精品电影| 日本九九视频| 午夜福利aaa| 91中文视频| 99精品在线观看视频| 黄页免费视频| 中文字幕日本在线| 日本中文字幕在线播放| 97人妻人人揉人人躁人人| 国产成人高潮毛片| 久久精品免费电影| 亚洲精品秘一区二区三区影| 中文字幕av免费在线观看| 日韩三级网| 国产三级在线免费观看| 偷拍亚洲天堂| 四虎成人网址| 琪琪色在线观看| 亚洲人妻无码在线| 中文字幕在线观看日韩| 国产黄片在线免费观看| 夜夜操夜夜操| 欧美在线观看视频| 久久嫩草精品久久久久精| 九九热无码| 水蜜桃成人在线| 无码人妻丰满熟妇区17水蜜桃| 精品无码免费视频| 国产精品免费网站| 一本色道久久| 免费成人黄色| 青青操逼网| 免费大黄网站| 亚洲午夜福利电影| 91中文字幕在线| 乱伦五月天| 成人激情视频A极| 国产在线一二三| 无码做爰欢H肉动漫网站在线看| 国产精品v欧美精品v日韩精品| 国产又爽又黄视频在线看| 久久精品久| 色老板在线免费观看| 国产AV三级| 欧美日韩在线免费| 韩国成人啪啪无码高潮| 日韩性视频| 91免费观看国产| 欧美无遮挡| 丁香婷婷在线| 亚洲精品国产精品国自产网站| 大香蕉AV在线观看| 风流少妇一区二区三区91| 影音先锋成人资源网| 狠狠亚洲| 色婷婷视频在线观看| 看一级黄色毛片| 在线视频三区| 日韩A片免费观看| 伊香蕉大综综综合| 精东AV| 日本在线小视频| 水蜜桃一曲二区| 国产综合自拍| 欧美亚洲黄色| 欧美色图视频在线观看| 丝袜三级片| 少妇bbb| a片在线免费看| 男女www| 国产AV福利| 婷婷激情丁香五月天| 污污污污污www在线观看优势| 日韩在线成人中文字幕亚洲| 欧美AAA在线观看| 国产棈品久久久久久久久久九秃| 精品天堂| 国产黄网| se99av| 中国老少配BBwBBwBBW| 亚洲手机在线播放| 日韩综合在线视频| 国产精品偷拍| 免费看黄色大片| 四虎2025在线51| 色99网站| 激情播播网| 操逼福利视频| 亚洲超碰在线| 亚洲无码激情| 成人禁区| 国精品无码一区二区三区在线秋菊| 日韩在线观看网址| 亚洲午夜在线| 亚洲激情av| 婷婷五月天丁香| 中文无码日本高潮喷水| 北条麻妃中文字幕旡码| 夜夜撸天天干| 亚洲AV成人精品一区二区三区| 一区二区三区在线观看视频| 亚洲Japanese办公室制服| 91老熟| 国产成人午夜高潮毛片| 亚洲成人第一页| 91精品丝袜久久久久久久久久粉嫩 | 思思精品视频| 大香蕉最新视频| 欧美黄色成人网站| 国产精品美女毛片真酒店| 久久大香蕉视频| 东京热网站在线观看| 啊啊啊啊啊在线观看| 人人看人人摸人人搞| 青青草精品视频| 日韩性爱视频| 日日夜夜超碰| 波多野59部无码喷潮| 综合AV| 免费一级a片| 久久嫩草精品久久久久精| 狼人综合视频| 日韩区在线| 2018天天干天天操| 黄色A级片| 又大又长又粗91| 韩日av| 亚洲春色一区二区三区| 日本一区二区三区免费视频| 日韩无码人妻一区二区三区| 91精品国产91久久久久久吃药| 亚洲秘av无码一区二区| 蜜桃AV一区二区三区| 北条麻妃无码视频| 亚洲AV中文在线| 国产v欧美| 亚洲AV无码成人精品区| 国产在线小视频| 国产黄色一区| 久草电影在线观看| 亚洲综合天堂| 亚洲AⅤ| 午夜免费福利视频| 亚洲AV无码专区在线播放中文 | 91成人在线免费视频| 四虎精品一区二区三区| 伊人色爱| 日韩久久高清| 日韩欧美内射| 九色PORNY国产成人蝌蚪| 欧美成人免费精品| 狼人一区二区| 日韩av免费在线观看| 美国一级A片草草视频| 日韩黄色片在线观看| 综合婷婷久久| 永久免费一区二区三区| 婷婷天天干| 欧美日韩一区在线观看| 国产无遮挡A片又黄又爽小直播| 日韩无码精品视频| 五月亭亭在线视频| 色播一区| 中文AV在线播放| 91热99| 五月婷在线视频| 岛国无码破解AV在线播放| 18禁免费网站| www.av在线播放| 成人视频你懂的| 国产欧美日韩在线观看| 影音先锋无码AV| 香蕉成人网站| 精品久久久久久久久久久| 偷偷操穴| 欧美日韩性色无码免费| 色哟哟无码| 日韩AV免费| 精品国产AV色一区二区深夜久久| 中文在线观看免费视频| 日韩中文字幕AV| 日本女人高潮视频| 国产操逼大片| 久久99老妇伦国产熟女| 精品國產一區二區三區久久蜜月| 青青草狠狠干| 中文国产字幕| 国产激倩都市一区二区三区欧美 | 视频二区中文字幕| 国产又爽又黄免费视频网站| 精品一区二区免费视频| 中文字幕永久在线观看| 日韩91| 欧美一区二区精品| 福利在线| 日本二区| 西西人体444www| 国产办公室丝袜人妖| 亚洲操逼图| 婷婷色吧| 亚洲成人娱乐网| www.日韩| 成人毛片一区二区三区无码| 亚洲高清无码在线免费观看| 激情99| 亚洲午夜激情电影| 日韩色道| 欧美精品A级片| 一区二区三区水蜜桃| 一区在线观看视频| 欧美激情内射| 天干天干天夜夜| 岛国精品在线播放| 北条麻妃精品青青久久价格| 大地影视中文第三页最新在线观看| 黄片久久| 青草在线视频| 男女视频91| 国产精品久久久久久久久| 嫩草在线播放| 成人色综合| 中文字幕在线观看a| 美日韩精品| 亚洲AV在线免费观看| 黄色美女毛片| 嫩草视频网站| 国产精品国产自产拍高清AV| 荫蒂添的高潮免费视频| 大香蕉手机在线视频| 天天爽天天做| 上床视频网站| 午夜精品秘一区二区三区| 欧美最猛黑A片黑人猛交蜜桃视频| 精品探花| 日本黄色视频电影| 人妻无码一区二区三区| 免费黄色毛片| 人妻丰满熟妇av无码|