国产秋霞理论久久久电影-婷婷色九月综合激情丁香-欧美在线观看乱妇视频-精品国avA久久久久久久-国产乱码精品一区二区三区亚洲人-欧美熟妇一区二区三区蜜桃视频

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

共 4741字,需瀏覽 10分鐘

 ·

2022-05-27 21:04

程序員的成長(zhǎng)之路
互聯(lián)網(wǎng)/程序員/技術(shù)/資料共享?
關(guān)注


閱讀本文大概需要 7.5 分鐘。

來(lái)自:juejin.cn/post/7052894117105238053

前言

延時(shí)消息(定時(shí)消息)指的在分布式異步消息場(chǎng)景下,生產(chǎn)端發(fā)送一條消息,希望在指定延時(shí)或者指定時(shí)間點(diǎn)被消費(fèi)端消費(fèi)到,而不是立刻被消費(fèi)。
延時(shí)消息適用的業(yè)務(wù)場(chǎng)景非常的廣泛,在分布式系統(tǒng)環(huán)境下,延時(shí)消息的功能一般會(huì)在下沉到中間件層,通常是 MQ 中內(nèi)置這個(gè)功能或者內(nèi)聚成一個(gè)公共基礎(chǔ)服務(wù)。
本文旨在探討常見延時(shí)消息的實(shí)現(xiàn)方案以及方案設(shè)計(jì)的優(yōu)缺點(diǎn)。

實(shí)現(xiàn)方案

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

這里討論的外部存儲(chǔ)指的是在 MQ 本身自帶的存儲(chǔ)以外又引入的其他的存儲(chǔ)系統(tǒng)。
基于外部存儲(chǔ)的方案本質(zhì)上都是一個(gè)套路,將 MQ 和 延時(shí)模塊 區(qū)分開來(lái),延時(shí)消息模塊是一個(gè)獨(dú)立的服務(wù)/進(jìn)程。延時(shí)消息先保留到其他存儲(chǔ)介質(zhì)中,然后在消息到期時(shí)再投遞到 MQ。
當(dāng)然還有一些細(xì)節(jié)性的設(shè)計(jì),比如消息進(jìn)入的延時(shí)消息模塊時(shí)已經(jīng)到期則直接投遞這類的邏輯,這里不展開討論。
圖片
下述方案不同的是,采用了不同的存儲(chǔ)系統(tǒng)。

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

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

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

通過(guò)定時(shí)線程定時(shí)掃描到期的消息,然后進(jìn)行投遞。定時(shí)線程的掃描間隔理論上就是你延時(shí)消息的最小時(shí)間精度。
優(yōu)點(diǎn):
  • 實(shí)現(xiàn)簡(jiǎn)單;
缺點(diǎn):
  • B+Tree索引不適合消息場(chǎng)景的大量寫入;

基于 RocksDB

RocksDB 的方案其實(shí)就是在上述方案上選擇了比較合適的存儲(chǔ)介質(zhì)。
RocksDB 在筆者之前的文章中有聊過(guò),LSM 樹更適合大量寫入的場(chǎng)景。滴滴開源的DDMQ中的延時(shí)消息模塊 Chronos 就是采用了這個(gè)方案。
DDMQ 這個(gè)項(xiàng)目簡(jiǎn)單來(lái)說(shuō)就是在 RocketMQ 外面加了一層統(tǒng)一的代理層,在這個(gè)代理層就可以做一些功能維度的擴(kuò)展。延時(shí)消息的邏輯就是代理層實(shí)現(xiàn)了對(duì)延時(shí)消息的轉(zhuǎn)發(fā),如果是延時(shí)消息,會(huì)先投遞到 RocketMQ 中 Chronos 專用的 topic 中。
延時(shí)消息模塊 Chronos 消費(fèi)得到延時(shí)消息轉(zhuǎn)儲(chǔ)到 RocksDB,后面就是類似的邏輯了,定時(shí)掃描到期的消息,然后往 RocketMQ 中投遞。
圖片
這個(gè)方案老實(shí)說(shuō)是一個(gè)比較重的方案。因?yàn)榛?RocksDB 來(lái)實(shí)現(xiàn)的話,從數(shù)據(jù)可用性的角度考慮,你還需要自己去處理多副本的數(shù)據(jù)同步等邏輯。
優(yōu)點(diǎn):
  • RocksDB LSM 樹很適合消息場(chǎng)景的大量寫入;
缺點(diǎn):
  • 實(shí)現(xiàn)方案較重,如果你采用這個(gè)方案,需要自己實(shí)現(xiàn) RocksDB 的數(shù)據(jù)容災(zāi)邏輯;

基于 Redis

再來(lái)聊聊 Redis 的方案。下面放一個(gè)比較完善的方案。
圖片
  • Messages Pool 所有的延時(shí)消息存放,結(jié)構(gòu)為KV結(jié)構(gòu),key為消息ID,value為一個(gè)具體的message(這里選擇Redis Hash結(jié)構(gòu)主要是因?yàn)閔ash結(jié)構(gòu)能存儲(chǔ)較大的數(shù)據(jù)量,數(shù)據(jù)較多時(shí)候會(huì)進(jìn)行漸進(jìn)式rehash擴(kuò)容,并且對(duì)于HSET和HGET命令來(lái)說(shuō)時(shí)間復(fù)雜度都是O(1))
  • Delayed Queue是16個(gè)有序隊(duì)列(隊(duì)列支持水平擴(kuò)展),結(jié)構(gòu)為ZSET,value 為 messages pool中消息ID,score為過(guò)期時(shí)間(分為多個(gè)隊(duì)列是為了提高掃描的速度)
  • Worker 代表處理線程,通過(guò)定時(shí)任務(wù)掃描 Delayed Queue 中到期的消息
這個(gè)方案選用 Redis 存儲(chǔ)在我看來(lái)有幾點(diǎn)考慮,
  • Redis ZSET 很適合實(shí)現(xiàn)延時(shí)隊(duì)列
  • 性能問(wèn)題,雖然 ZSET 插入是一個(gè) O(logn) 的操作,但是Redis 基于內(nèi)存操作,并且內(nèi)部做了很多性能方面的優(yōu)化。
但是這個(gè)方案其實(shí)也有需要斟酌的地方,上述方案通過(guò)創(chuàng)建多個(gè) Delayed Queue 來(lái)滿足對(duì)于并發(fā)性能的要求,但這也帶來(lái)了多個(gè) Delayed Queue 如何在多個(gè)節(jié)點(diǎn)情況下均勻分配,并且很可能出現(xiàn)到期消息并發(fā)重復(fù)處理的情況,是否要引入分布式鎖之類的并發(fā)控制設(shè)計(jì)?
在量不大的場(chǎng)景下,上述方案的架構(gòu)其實(shí)可以蛻化成主從架構(gòu),只允許主節(jié)點(diǎn)來(lái)處理任務(wù),從節(jié)點(diǎn)只做容災(zāi)備份。實(shí)現(xiàn)難度更低更可控。

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

上述幾個(gè)方案中,都通過(guò)線程定時(shí)掃描的方案來(lái)獲取到期的消息。
定時(shí)線程的方案在消息量較少的時(shí)候,會(huì)浪費(fèi)資源,在消息量非常多的時(shí)候,又會(huì)出現(xiàn)因?yàn)閽呙栝g隔設(shè)置不合理導(dǎo)致延時(shí)時(shí)間不準(zhǔn)確的問(wèn)題。可以借助 JDK Timer 類中的思想,通過(guò)?wait-notify?來(lái)節(jié)省 CPU 資源。
獲取中最近的延時(shí)消息,然后wait(執(zhí)行時(shí)間-當(dāng)前時(shí)間),這樣就不需要浪費(fèi)資源到達(dá)時(shí)間時(shí)會(huì)自動(dòng)響應(yīng),如果有新的消息進(jìn)入,并且比我們等待的消息還要小,那么直接notify喚醒,重新獲取這個(gè)更小的消息,然后又wait,如此循環(huán)。

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

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

RocketMQ

RocketMQ 開源版本支持延時(shí)消息,但是只支持 18 個(gè) Level 的延時(shí),并不支持任意時(shí)間。只不過(guò)這個(gè) Level 在 RocketMQ 中可以自定義的,所幸來(lái)說(shuō)對(duì)普通業(yè)務(wù)算是夠用的。默認(rèn)值為“1s 5s 10s 30s 1m 2m 3m 4m 5m 6m 7m 8m 9m 10m 20m 30m 1h 2h”,18個(gè)level。
通俗的講,設(shè)定了延時(shí) Level 的消息會(huì)被暫存在名為SCHEDULE_TOPIC_XXXX的topic中,并根據(jù) level 存入特定的queue,queueId = delayTimeLevel – 1,即一個(gè)queue只存相同延時(shí)的消息,保證具有相同發(fā)送延時(shí)的消息能夠順序消費(fèi)。?broker會(huì)調(diào)度地消費(fèi)SCHEDULE_TOPIC_XXXX,將消息寫入真實(shí)的topic。
下面是整個(gè)實(shí)現(xiàn)方案的示意圖,紅色代表投遞延時(shí)消息,紫色代表定時(shí)調(diào)度到期的延時(shí)消息:
圖片
優(yōu)點(diǎn):
  • Level 數(shù)固定,每個(gè) Level 有自己的定時(shí)器,開銷不大
  • 將 Level 相同的消息放入到同一個(gè) Queue 中,保證了同一 Level 消息的順序性;不同 Level 放到不同的 Queue 中,保證了投遞的時(shí)間準(zhǔn)確性;
  • 通過(guò)只支持固定的Level,將不同延時(shí)消息的排序變成了固定Level Topic 的追加寫操作
缺點(diǎn):
  • Level 配置的修改代價(jià)太大,固定 Level 不靈活
  • CommitLog 會(huì)因?yàn)檠訒r(shí)消息的存在變得很大

Pulsar

Pulsar 支持“任意時(shí)間”的延時(shí)消息,但實(shí)現(xiàn)方式和 RocketMQ 不同。
通俗的講,Pulsar 的延時(shí)消息會(huì)直接進(jìn)入到客戶端發(fā)送指定的 Topic 中,然后在堆外內(nèi)存中創(chuàng)建一個(gè)基于時(shí)間的優(yōu)先級(jí)隊(duì)列,來(lái)維護(hù)延時(shí)消息的索引信息。延時(shí)時(shí)間最短的會(huì)放在頭上,時(shí)間越長(zhǎng)越靠后。在進(jìn)行消費(fèi)邏輯時(shí)候,再判斷是否有到期需要投遞的消息,如果有就從隊(duì)列里面拿出,根據(jù)延時(shí)消息的索引查詢到對(duì)應(yīng)的消息進(jìn)行消費(fèi)。
如果節(jié)點(diǎn)崩潰,在這個(gè) broker 節(jié)點(diǎn)上的 Topics 會(huì)轉(zhuǎn)移到其他可用的 broker 上,上面提到的這個(gè)優(yōu)先級(jí)隊(duì)列也會(huì)被重建。
下面是 Pulsar 公眾號(hào)中對(duì)于 Pulsar 延時(shí)消息的示意圖。
圖片
乍一看會(huì)覺得這個(gè)方案其實(shí)非常簡(jiǎn)單,還能支持任意時(shí)間的消息。但是這個(gè)方案有幾個(gè)比較大的問(wèn)題
  • 內(nèi)存開銷:?維護(hù)延時(shí)消息索引的隊(duì)列是放在堆外內(nèi)存中的,并且這個(gè)隊(duì)列是以訂閱組(Kafka中的消費(fèi)組)為維度的,比如你這個(gè) Topic 有 N 個(gè)訂閱組,那么如果你這個(gè) Topic 使用了延時(shí)消息,就會(huì)創(chuàng)建 N 個(gè) 隊(duì)列;并且隨著延時(shí)消息的增多,時(shí)間跨度的增加,每個(gè)隊(duì)列的內(nèi)存占用也會(huì)上升。(是的,在這個(gè)方案下,支持任意的延時(shí)消息反而有可能讓這個(gè)缺陷更嚴(yán)重)
  • 故障轉(zhuǎn)移之后延時(shí)消息索引隊(duì)列的重建時(shí)間開銷:?對(duì)于跨度時(shí)間長(zhǎng)的大規(guī)模延時(shí)消息,重建時(shí)間可能會(huì)到小時(shí)級(jí)別。(摘自 Pulsar 官方公眾號(hào)文章)
  • 存儲(chǔ)開銷:?延時(shí)消息的時(shí)間跨度會(huì)影響到 Pulsar 中已經(jīng)消費(fèi)的消息數(shù)據(jù)的空間回收。打個(gè)比方,你的 Topic 如果業(yè)務(wù)上要求支持一個(gè)月跨度的延時(shí)消息,然后你發(fā)了一個(gè)延時(shí)一個(gè)月的消息,那么你這個(gè) Topic 中底層的存儲(chǔ)就會(huì)保留整整一個(gè)月的消息數(shù)據(jù),即使這一個(gè)月中99%的正常消息都已經(jīng)消費(fèi)了。
對(duì)于前面第一點(diǎn)和第二點(diǎn)的問(wèn)題,社區(qū)也設(shè)計(jì)了解決方案,在隊(duì)列中加入時(shí)間分區(qū),Broker 只加載當(dāng)前較近的時(shí)間片的隊(duì)列到內(nèi)存,其余時(shí)間片分區(qū)持久化磁盤,示例圖如下圖所示:
圖片
但是目前,這個(gè)方案并沒有對(duì)應(yīng)的實(shí)現(xiàn)版本??梢栽趯?shí)際使用時(shí),規(guī)定只能使用較小時(shí)間跨度的延時(shí)消息,來(lái)減少前兩點(diǎn)缺陷的影響。另外,因?yàn)閮?nèi)存中存的并不是延時(shí)消息的全量數(shù)據(jù),只是索引,所以可能要積壓上百萬(wàn)條延時(shí)消息才可能對(duì)內(nèi)存造成顯著影響,從這個(gè)角度來(lái)看,官方暫時(shí)沒有完善前兩個(gè)問(wèn)題也可以理解了。
至于第三個(gè)問(wèn)題,估計(jì)是比較難解決的,需要在數(shù)據(jù)存儲(chǔ)層將延時(shí)消息和正常消息區(qū)分開來(lái),單獨(dú)存儲(chǔ)延時(shí)消息。

QMQ

QMQ提供任意時(shí)間的延時(shí)/定時(shí)消息,你可以指定消息在未來(lái)兩年內(nèi)(可配置)任意時(shí)間內(nèi)投遞。
把 QMQ 放到最后,是因?yàn)槲矣X得 QMQ 是目前開源 MQ 中延時(shí)消息設(shè)計(jì)最合理的。里面設(shè)計(jì)的核心簡(jiǎn)單來(lái)說(shuō)就是 多級(jí)時(shí)間輪 + 延時(shí)加載 + 延時(shí)消息單獨(dú)磁盤存儲(chǔ)。
QMQ的延時(shí)/定時(shí)消息使用的是兩層 hash wheel 來(lái)實(shí)現(xiàn)的。第一層位于磁盤上,每個(gè)小時(shí)為一個(gè)刻度(默認(rèn)為一個(gè)小時(shí)一個(gè)刻度,可以根據(jù)實(shí)際情況在配置里進(jìn)行調(diào)整),每個(gè)刻度會(huì)生成一個(gè)日志文件(schedule log),因?yàn)镼MQ支持兩年內(nèi)的延時(shí)消息(默認(rèn)支持兩年內(nèi),可以進(jìn)行配置修改),則最多會(huì)生成?2 * 366 * 24 = 17568?個(gè)文件(如果需要支持的最大延時(shí)時(shí)間更短,則生成的文件更少)。
第二層在內(nèi)存中,當(dāng)消息的投遞時(shí)間即將到來(lái)的時(shí)候,會(huì)將這個(gè)小時(shí)的消息索引(索引包括消息在schedule log中的offset和size)從磁盤文件加載到內(nèi)存中的hash wheel上,內(nèi)存中的hash wheel則是以500ms為一個(gè)刻度。
圖片
總結(jié)一下設(shè)計(jì)上的亮點(diǎn):
  • 時(shí)間輪算法適合延時(shí)/定時(shí)消息的場(chǎng)景,省去延時(shí)消息的排序,插入刪除操作都是 O(1) 的時(shí)間復(fù)雜度;
  • 通過(guò)多級(jí)時(shí)間輪設(shè)計(jì),支持了超大時(shí)間跨度的延時(shí)消息;
  • 通過(guò)延時(shí)加載,內(nèi)存中只會(huì)有最近要消費(fèi)的消息,更久的延時(shí)消息會(huì)被存儲(chǔ)在磁盤中,對(duì)內(nèi)存友好;
  • 延時(shí)消息單獨(dú)存儲(chǔ)(schedule log),不會(huì)影響到正常消息的空間回收;

總結(jié)

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

推薦閱讀:

“入侵火狐只花了8秒”

SpringBoot 引入線程池+Queue緩沖隊(duì)列實(shí)現(xiàn)高并發(fā)下單業(yè)務(wù)

互聯(lián)網(wǎng)初中高級(jí)大廠面試題(9個(gè)G)

內(nèi)容包含Java基礎(chǔ)、JavaWeb、MySQL性能優(yōu)化、JVM、鎖、百萬(wàn)并發(fā)、消息隊(duì)列、高性能緩存、反射、Spring全家桶原理、微服務(wù)、Zookeeper......等技術(shù)棧!

?戳閱讀原文領(lǐng)取!? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??朕已閱?

瀏覽 14
點(diǎn)贊
評(píng)論
收藏
分享

手機(jī)掃一掃分享

分享
舉報(bào)
評(píng)論
圖片
表情
推薦
點(diǎn)贊
評(píng)論
收藏
分享

手機(jī)掃一掃分享

分享
舉報(bào)

感谢您访问我们的网站,您可能还对以下资源感兴趣:

国产秋霞理论久久久电影-婷婷色九月综合激情丁香-欧美在线观看乱妇视频-精品国avA久久久久久久-国产乱码精品一区二区三区亚洲人-欧美熟妇一区二区三区蜜桃视频 最新va在线观看| 精品中文在线| 亚洲香蕉国产| 大香蕉免费中文| 亚洲免费婷婷| 久久国产精品网站| 国产无套内射在线观看| 亚洲码无人客一区二区三区| 91精品婷婷国产综合| 8090操逼网| 大香蕉亚洲成人| 亚洲国产三级| 免费A级毛片在线播放不收费| 国产人妻精品| 一区二区三区免费在线| 无码福利视频| 麻豆AV免费看| 欧美AAA黄片| 国产青草视频在线观看| 国产亚洲aⅴ| 成人看片33x9.CC| 精品人妻一区二区| 一区日韩| 国内自拍一区| 蜜桃网站在线观看| A级免费毛片| 午夜性福利视频| AⅤ天堂| 国产一级a毛一级a做免费的视频 | 欧美亚洲国产一区二区三区| 91视频在线免费观看app| 特级毛片AAAAAA蜜桃| 91视频在线观看18| 人妻第一页| 天天操中文字幕| 蜜桃av色偷偷av老熟女| 人人草人人操| 自拍偷拍AV| 国产精品秘久久久久久一两个一起| 一区视频免费观看| 国产色拍| 国产黄色在线看| 不卡无码av| 日韩A区| 撸撸操在线视频观看只有精品 | 99re在线观看| 亚洲无码免费观看视频| 91亚洲视频在线观看| 一本道高清| 久久综合伊人| xxxxx日韩| 在线内射视频| 免费观看一区二区三区| 欧美国产视频| 亚洲AA| 乱伦视频91| 91在线视频免费| 国产成人精品免高潮在线观看| 国产凹凸视频在线观看| YOUjiZZ欧美大全| 国产乱国产乱老熟300视频 | 免费涩涩无遮挡18国产| 在线色综合| 国产精品宾馆| 最近中文字幕中文翻译歌词| 国产无码电影网| 亚洲日韩精品欧美一区二区yw| 日韩毛片在线视频x| 日本三级黄色视频| 麻豆疯狂做受XXXX高潮视频| 色福利网| 日韩日日操| 成人在线伊人| 天天日天天操天天日| AV天堂手机| AV1区二区| 欧美亚洲三级片| 性爱一级视频| 麻豆精品传媒国产剧的特点| 一本久道综合| 五月天丁香成人| 午夜亚洲AV永久无码精品麻豆| 成人在线18禁| 91毛片观看| 日韩大吊| 亚洲在线观看网站| 撸撸综合网| 三级99| 91香蕉网站| 探花在线| 亚洲午夜福利视频在线观看| 免费三级怡红院| 日本无码视频在线| 天堂色综合| www.日逼| 日本做爱视频| 天天操电影| 黄色电影一级片| 嫩BBB槡BBBB槡BBBB视频-百度 | 在线观看免费A片| 成人免费看片| 怡红院视频| 国产三级片在线视频| 婷婷久久综合久色综| 特黄毛片| 夜夜嗨老熟女AV一区二区三区| 国产欧美一区二区| 美女网站黄| 日韩视频播放在线综合| 午夜亚洲AV永久无码精品蜜芽| 国产成人精品无码片区在线观91| 日韩综合不卡| 福利视频中文字幕| 国产精品中文字幕在线观看| 99热只有精| 精品视频日韩| 要操逼网| 91ThePorn国产在线观看 | 99在线精品视频| 91欧美黑人| 先锋影音一区二区三区| 精品蜜桃秘一区二区三区观看| 美女AV网站| 一道本无码视频| 亚洲在线一区二区| 久久综合久| 激情视频免费在线观看| 超级碰碰| 国产h在线观看| 欧美视频在线观看免费| 国产A片| 黑人干亚洲| 丁香花中文字幕| 九九成人免费视频| 亚洲黄色在线观看视频| 一级日逼视频| 美女免费网站| 日本特级片| 日本爱爱网站| 丰满人妻一区二区三区| 龙泽美曦土豪| 色哟哟视频在线观看| 男人天堂网av| 久久探花| h国产在线| 久久国产性爱| 精品二区| 青娱乐在线成人| 综合激情视频| 国产a片免费观看| 免费性片| 大地影院资源官网| 久久悠悠| 污网站在线观看| 国产亚洲视频在线观看视频| 久久久久久免费一级A片| 欧美亚洲在线观看| 日日艹夜夜艹| 欧美中文日韩| 亚洲av资源| 免费看成人747474九号视频在线观看| 久久99久久视频| 久久婷婷热| 高清无码视频免费| 免费av片| 日本高清一区| 日日碰狠狠| 在线中文字幕在线观看| 一大高清日韩| 黄色视频免费在线观看网站| 欧美亚洲日韩一区二区三区| 亚洲精品日韩无码| 亚洲aaa| 亚洲伊人在线| 猛男大粗猛爽h男人味| 一本无码高清| 在线成人免费视频| 天天干天天操| 中文字幕视频在线免费观看| 日韩三级黄色| 福利视频一区二区三区| 日产无码久久久久久| 色情五月| 婷婷开心五月天| 久久99高清| 午夜资源网| 国产成人无码一区二区| 中文字幕第4页| 免费一级黄色毛片| 爱爱爱网址| 日韩AV无码专区亚洲AV| 国外成人性视频免费| 人人澡人人澡人人| 午夜社区| 在线啪| 无码熟妇人妻无码AV在线天堂| 西西人体44www大胆无码| 欧美夜夜爽| 97国产在线| 人妻人人妻| 免费国产成人看片在线| 能看的av网站| av解说| 午夜影院操| 国产污视频在线观看| 人人操人人摸人人看| 国产免费麻豆| 青青草五月天色婷婷丁香| 久久精品无码一区二区无码性色 | 狠狠撸天天日| 人人弄| 国产女人18水真多18精品一级做 | 日韩免费无码| 91大神免费在线观看| 三级片AV在线| 免费肏逼视频| 永久免费一区二区三区| 先锋影音资源站av每日资源在线| 狠狠2021| aaa久久| 99国产在线观看| 99er这里只有精品| 中文字幕AV第一页| 91人妻无码精品蜜桃| 无码一二区| 艹逼视频免费观看| 蜜桃AV无码一区二区三区| 特级毛片www| 日本高清视频九区| 日本黄色电影在线播放| 一级黄色毛片视频| 日日撸夜夜撸| 在线观看免费黄视频| 亚洲日韩欧美中在线| 久久嫩草精品久久久久| 久久人妻免费视频| 国产三级片91| 麻豆午夜成人无码电影| 蜜臀久久99精品久久久巴士| 亚洲精品日韩综合观看成人91| 人人妻人人插| 91视频一区二区三区| 精品福利一区二区三区| 超碰福利导航| 中文在线观看视频| 超碰激情| 另类老妇性BBwBBw图片| 中文字幕AV播放| 国产激情欧洲在线观看一区二区三区| 日韩二三区| AAA三级片| 成人自拍视频| 182AV| 午夜福利久久| 欧美色色网| 91视频免费| 国产一区二区三区在线视频| 操逼精品| 波多野结衣精品无码| 黄色网页在线免费观看| 久草视频在线播放| 琪琪久久| 中文字幕99| 三级片韩国AV| 另类视频在线| 亚洲性爱中文字幕| 吴梦梦一区二区在线观看| 精品无码一区二区Av蜜桃| 91在线无码精品秘入口动作 | 17c精品麻豆一区二区免费| 亚洲AV无码成人网站国产网站| 99久久99久久兔费精桃| 亚洲性爱视频在线观看| 亚洲视频三区| 韩国中文无码| 性色网站| 精品九九九九九| 一区二区三区免费看| 久久黄色网络| 色婷婷播放| 中文无码人妻| 很很撸在线视频| 国内精品久久久久久久| 国产激情综合五月久久| 中文字幕无码播放| 一级黄色免费电影| 日韩高清一级免费| 亚洲午夜精品久久久| 91免费在线| 欧美午夜影院| 无码人妻精品一区二区三千菊电影| 日韩字幕| a√天堂中文在线8| 国产精品视频播放| 天天撸天天日| 国产成人A| 婷婷五月天丁香成人社区| 乱子伦国产精品www| 亚洲色婷婷| 欧美熟妇高潮流白浆| 伊人久久大香线蕉av一区| 亚洲无码在线高清| 北条麻妃99精品| MAD033_后宫秘密陶子. | 热热AV| www.怡春院| 国产综合一区二区| 69av在线观看| 国产中文字幕第一页| 婷婷五月视频| 久久国产一级片| 色婷婷在线观看视频| 秋霞二区| 一区二区有限公司| 久草中文在线| 国产熟睡乱子伦午夜视频_第1集 | 一级片黄片| 香蕉视频91| 日韩无码一| 男人天堂社区| 亚洲精品系列| 亚洲精品成人av无码| 在线观看免费黄| 麻豆md0049免费| 2025精品精品视频| 熟女在线视频| 亚洲无码天堂| 国产精品天天| 日日撸| 日日操人人操| 欧美色交| 人人操人人操人人操人人操| 国产人成一区二区三区影院| 色情五月婷婷| 欧美性爱无码| 91porn国产| 婷婷丁香综合| 黄片视频在线免费播放| 最近中文字幕mv第三季歌词| 高清色视频| 男人天堂视频网| 亚洲视频综合网| 亚洲无码不卡视频| 久久久久久成人无码| 天堂久草| 豆花精品视频| 中文有码在线| 国产毛片18水真多18精品| 操欧美美女| 欧美在线观看视频一区| 三级黄色毛片| 亚洲精品国产成人| 色婷婷在线免费视频| 国产AV无码一区| 亚洲日本视频| 国产精品一卡二卡三卡| AV在线免费观看网站| 无码人妻丰满熟妇区17水蜜桃 | 好男人WWW社区在线视频夜恋| 亚洲无码电影在线| 日本视频精品| 苍井空亚洲精品AA片在线播放| 久久国产热视频| 三级免费无限AV| 91大香蕉视频| 麻豆91免费视频| 亚洲专区在线播放| 伊人精品大香蕉| 久久噜噜噜精品国产亚洲综合| 欧美干综合| 蜜臀99久久精品久久久久久软件| 国产精品在线免费| 精品香蕉视频| 日韩AV无码一区二区| 熟妇无码| 爱爱爱爱视频| 日韩AAA在线| 777视频在线观看| 91吊逼| 蜜桃视频成人app| 欧美V亚洲| 亚洲人妻在线视频| 黄色电影av| 99在线精品视频| 日韩三级一区| 国产A级成人婬片1976| 四季AV一区二区夜夜嗨| 国产a毛一级,a毛一级| 久久人爽| 国产成人777777精品综合| 亚洲欧美成人在线| 亚洲AA| 亚洲黄色无码视频| A级毛片在线观看| 中文在线第一页| 无码免费高清| 波多野结衣大战黑人| 午夜亚洲国产一区视频网站| 黄色特级毛片| 日本少妇高潮喷水XXXXXXX| 久久夜色精品国产欧美乱极品 | 男人的天堂视频网站| WWW亚洲视频| 五月天婷婷在线观看| 国产精品宾馆在线| 亚洲人气无码AV| 丰满人妻精品一区二区在线| XX熟女HD| 欧美日韩卡一卡二在线播放视频| 亚洲一本之道| 天天扣天天操| 99热这里只有精品1| 亚洲无色| 色老板免费视频| 人人操人人摸人人看| 99久久国产视频| 成人视频一区二区| 超碰在线天天| 中文字幕一区二区蜜桃| 无码成人A片在线观看| 狠狠操免费| 一级久久| 亚洲天堂精品视频| 综合久久久久| 免费无码国产在线观看| 一级性爽AV毛片| 国产九九精品| 亚洲视频免费看| jizz久久| 加勒比在线视频| 福利网站在线观看| 亚洲成a人| 黄工厂精品视频在线播| 五月丁香婷婷在线| 年轻女教师高潮2| 国产成人+综合亚洲+天堂| 北条麻妃黄色视频| 99热在线观看者| h片在线播放| 欧美性性生交XXXXX无码| 苍井空一区二区三区四区| 国产A片免费看| 91在线无码精品秘入口男同| 成人性生交大片免费看小芳| 操逼99| 日韩黄色片网站| 香蕉成人网站在线观看| 国产在线激情视频| 亚洲www在线| 视频国产区| 亚洲无码高清在线观看| 久久国产99| 午夜爱爱免费视频| 国产黄片视频| 无码人妻精品一区二区蜜桃91| 91人妻人人澡人人爽人人DVD | 人妻少妇综合| 欧美性猛交一区二区三区| 天天摸夜夜操| 自拍偷拍激情视频| 五月天久久久久久| 成人欧美| 骚逼无码| jizz免费观看| 亚洲香蕉视频| 欧美黄色三级片| 黄色无码视频在线观看| 污导航在线| 三级黄色视频| 欧美日韩成人一区二区三区| 日韩AV网站在线观看| 免费一级A片| 影音先锋日韩精品| 欧美特黄一级视频| 西西人体大胆ww4444图片| 成人A片一级| 免费肏逼视频| 成人网站大香蕉| 日韩无码人妻久久一区二区三区 | 久久97人妻AⅤ无码一区| 在线一级A片| 特级av| 亚洲AV无码永久精品| 中文字幕在线播放av| 亚洲香蕉视频| 亚洲欧美日韩久久| 中文字幕免费AV| 先锋影音亚洲无码av| 嫩BBB槡BBBB槡BBBB撒尿-百度 | 欧美黄色一级网站| 日本三级片网站在线观看| 99黄色视频| 午夜成人在线视频| 无码秘蜜桃一区二区三区| 久久手机电影| 成人自拍网| 色婷婷视频网站| 狼色AV| 欧美操逼免费视频| 中文字幕h| 精品资源成人| 99热热| 国产成人内射| 日本一级做a爱片| 福利导航网| 囯产精品99久久久久久WWW| 在线观看免费视频a| gogogo高清在线完整免费播放韩国| h片免费在线观看| 香蕉国产2023| 五月婷婷导航| 大香煮伊在75| 亚洲精品电影| 久久男女| 亚洲午夜免费视频| 亚洲天堂在线免费| 欧美性大香蕉| 欧美成人一区二区三区| 7799精品| 欧美高清无码在线观看| 国产精品久久久久久久久借妻| 88国产精品| 草逼免费视频| 日韩成人一区二区三区| 色综合欧美| 欧美一级免费A片| 天天夜夜爽| 日韩在线一区二区| 国产三级电影在线观看| 91精品在线免费观看| 蜜臀久久99精品| 三级高清无码视频| 日本一级按摩片免费观看| 黄色免费在线观看视频| 老太色HD色老太HD| 精产国品一区二区三区| 欧美日韩在线观看一区二区三区| aaa在线免费视频| 天天爱天天射| 日逼综合| 色999日韩| 97人妻一区二区精品视频| 91一区在线观看| 国产精品18在线| 国产成人秘免费观看一区二区三区 | 中文字幕一区二区三区四区| 91美女视频| 北条麻妃在线一区| 日韩一级免费在线观看| 中文字幕北条麻妃| 四川少妇搡bbbb搡bbbb | 国产高清一区| 草草在线视频| 国产乱伦对白| 在线99热| 色资源在线观看| 日韩黄色视频在线观看| 最新va在线观看| 欧美天堂在线| 91精品国产综合久久久蜜臀九色| 亚洲色久悠悠| 欧美精品一卡二卡| 91香蕉视频免费| 二区三区在线观看| 插逼视频国产| 伊人大香蕉视频| 一级片在线观看视频| www.17c嫩嫩草色蜜桃网站| 日韩在线播放视频| 丁香五月婷婷中文字幕| 九九99精品视频| 国产高清精品在线| 偷拍92| 国产口爆| 黑人AV在线| 欧美肏屄| 综合色播| 国产无码操逼| 俄罗斯白嫩BBwBBwBBw91| A免费在线观看| 婷婷V亚洲V丁香月天V日韩V| 欧洲成人无码| 吴梦梦md0069| 日本黄色免费网站| 免费无码国产在线观看| 日本A片视频| 粉嫩小泬BBBBBB免费| 日韩AV无码一区二区三区| 欧美日韩在线视频免费| 亚洲精品成人网站| 日本天堂网在线观看| 午夜三级视频| 日本操鸡小视频| 亚洲精品成人| 午夜社区| 欧美三级在线视频| 日韩免费无码视频| A片视频免费| 99视频这里有精品| 色婷婷18禁| 亚洲无码AV在线观看| 婷婷五月丁香在线| 一本色道久久综合亚洲怎么玩| 高潮视频在线| 豆花成人在线| 最美孕交vivoestv另类| 色悠悠久久| 免费看操逼| 国产精品成人AV在线| 偷拍一区二区| 一级黄色a片| 久久精品国产99精品国产亚洲性色 | 四川妇搡BBBB搡BBBB| 色婷婷视频一区二区| 国产在线观看免费成人视频| 日韩一级黄色电影| 人人色人人摸| 久久精品熟妇丰满人妻99| 日本免费黄色片| 7799精品| 西西4444www大胆无| 高清无码激情| 国产精品乱子伦视频一区二区| 无码V | 巜人妻初尝按摩师BD中字| 无码福利电影| 黄色小网站在线观看| 国产综合久久777777麻豆 | www日韩| v天堂在线| 一本色道久久加勒比精品| 欧美在线黄色| 国产白丝在线观看| 天天干女人| 国产一级a爱做片免费☆观看| 黑人大香蕉| 丰满少妇在线观看网站| 亚洲免费视频播放| 俺也去操| 亚洲精品97久久中文字幕| 亚洲天堂色| 精品久久精品| 天天色色综合| 七十路の高齡熟妇无码| 欧美日韩高清无码| 免费网站观看www在线观看| 天天操夜夜撸| 无码人妻精品一区二区三千菊电影 | 久久久精品中文字幕麻豆发布 | 粉嫩99国产精品久久久久久人妻| 国精品无码一区二区三区在线 | 18禁网站在线看| 日本无码片| AV超碰| 天天干天天在线观看| 午夜激情福利| 三级片网页| 一级黄片在线| 另类老妇奶性生BBwBBw偷拍| 久久久久亚洲AV无码专区成人| 中文字幕在线观看网| 日韩高清无码免费观看| 香蕉视频成人在线观看| 亚洲免费AV在线| 97视频精品| jlzzzjlzzz国产免费观看| 激情爱爱网| 河南乱子伦视频国产| 国产成人精品一区二| 久久久蜜桃| 中文字幕无码日韩| 日韩中文字码无砖| 久久这里都是精品| 又紧又嫩又爽无遮挡免费| 欧美日视频| 亚洲无码在线播放| 美女天天操| 无码人妻一区二区三区四区老鸭窝| 人妻无码视频| 日韩欧美在线中文| 97操逼网| 亚洲欧美久久久久久久久久久久| XX熟女HD| 国产精品一区二区在线播放| 伊人大香在线| 青青草原成人在线视频| 国产丝袜在线| 一区二区无码区| 成人网站毛片| 国产黄色视频免费观看| 亚洲人妻在线视频| 国产免费无码| 91性爱视频| 国产精品9999久久久久仙踪林| 成人做爱免费看| 水果派解说AV无码一区| 台湾中文字幕网| 丁香六月婷婷综合激情欧美| 内射| 翔田千里無碼破解| 秋霞中文字幕| 日本一区二区三区在线视频| 日韩黄色在线观看| 日韩综合在线| 女神思瑞精品一区二区三区| 韩国AV三级| 在线A∨视频| 天天草B| 中国a一片一级一片| 国产精品无码激情| 精品亚洲一区二区三区四区五区| 91人人操人人爽| 国产综合在线播放| 91人妻在线视频| 久久久久免费视频| www.欧美| 奶大丰满一乱一视频一区二区三区在| 国产在线观看97| 苍井空精毛片精品久久久| av影音先锋在线| 欧美操逼大片| 欧美成人免费A级在线观看| 欧美在线一级| 国产三级片在线视频| 高潮视频在线观看| 韩国高清无码60.70.80| 国产精品特级毛片| 加勒比综合无码| 国产aaaaaaaaaa| 久久理论| 国产精品1区2区| 亚洲一区在线播放| 日韩视频在线免费观看| 男人午夜AV| 内射学生妹J亅| 国产白浆一区二区三区| 国产久久久久久久久久| 91人妻人人澡人人爽人妻| 久久久久久穴| 久久少妇视频| 无码三级片在线观看| 91麻豆福利在线| 91传媒在线免费观看| www.午夜福利| 三级片男人的天堂| 久久精品91| 欧美视频免费在线观看| 中文字幕在线观看网站| 女人自慰网站在线观看| 人人操人人干人人妻| 亚洲AV秘无码不卡在线观看| 日韩黄色免费电影| 天堂在线中文字幕| 日韩无码影院| 狠狠色一区| 拍拍拍免费视频| 日本A片在线免费观看| 中文字幕亚洲欧美| 男女视频网站| 亚洲av电影在线观看| 成人a一级片| 亚洲香蕉视频网站| 国产视频999| 玖玖99视频| 日韩二区三区| 久久久成人电影| 国产1024在线| 99久久精品国产成人一区二区| 天天视频国产| 免费一级做a爱片毛片A片小说 | 久久久综合网| 广州媚黑妇系列视频在线| 欧美精品系列| 国产女人视频| 色婷婷视频在线观看| 综合插插| 成av人片一区二区三区久久| 亚洲日韩精品在线观看| 秋霞午夜| 99偷拍| 人妻体体内射精一区二区| 色婷在线视频| 自拍做爱视频| 免费三级网址| 久久久久久久香蕉视频| 国产伦理一区| 无码无码一区二区三区| 国产精品视频免费看| 超碰大香蕉| 婷婷五月天在线电影| 最近最火中文字幕mv歌词| 久久久久久久久久成人永久免费视频| 3344gc在线观看入口| 99中文字幕| 三级不卡视频| 五月天丁香花| 欧洲成人在线视频| 成人在线黄色视频| 伊人色色综合| 国产xxxx视频| 成人片无码| 成人欧美在线| 91白浆肆意四溢456| 在线观看三级| 黄色电影一级片| 亚洲欧美人妻| 亚洲性夜夜天天天天天天| 日韩毛片一区二区| 日韩高清无码网站| 午夜在线视频| 先锋影音一区二区三区| 在线观看AV网站| 伊人成年网| 中日韩欧美一级A片免费| 91人妻日韩人妻无码专区精品| 久久综合色色| 日日夜夜AV| 成人黄片网站| 3d动漫一区二区| 日韩在线三级片| 成人国产AV精| 好想被c秘好爽n网址| 欧美老妇BBBBBBBBB| 日韩av小电影| 日韩视频无码| 青青草无码在线视频| 亚洲无码av网站| 中文字幕日韩电影| 91日韩| 日韩精品成人在线视频| 日韩操屄视频| 熟女人妻人妻の视频| 国产P片内射天涯海角| 亲孑伦XXXⅹ熟女| 亚洲精品秘一区二区三小| 狠狠操综合网| 一本色道久久综合熟妇人妻| 中文字幕va| 人人妻人人爽人人澡人人精品| 男人天堂手机视频| 欧美成人精品激情在线观看| 婷婷成人综合| 国产黄色免费看| 五月天深爱激情网| 另类欧美色图| 日韩午夜成人| 久久婷婷婷| 色综合婷婷| 无码一区二区三区四| 91无码成人视频| 亚洲欧洲无码视频| 亚洲AV无码成人精品区| 国产情趣网站| 一级AAAAA片裸体做受| 久久与婷婷| 国产精品激情| 91日韩高清| 人妻无码高清| 国产成人免费视频| 麻豆秘在线观看国产| 69网站| 国产日逼视频| 日韩人成| 一区二区三区黄色| 婷婷五月天激情俺来也| 成人无码网站在线观看| 强伦轩一区二区三区四区| 欧美日韩免费| 日韩欧美大片在线观看| 欧美中文在线观看| 亚洲AV无码成人精品区天堂小说 | 免费看黄色电影| 中日毛片| 自拍偷拍网站| 大香蕉久在线| 91免费高清视频| 亚洲天堂在线观看视频| 国产理论在线| 午夜无码精品一区二区三区99午| 秋霞二区| AV香蕉| 中文无码人妻| 亚洲色人妻| 亚洲人天堂| 无码一二区| 少妇久久久久久久久久| 无码成人av| 1024黄| 大炕上公让我高潮了六次| 日本无码在线播放| 国产一级AA大片毛片| 日韩亚洲欧美在线| 国产色片| 免费涩涩无遮挡18国产| 亚洲国产精品久久| 日本亚洲欧洲免费| 奇米影视77777| 伊人网视频在线观看| 亚洲综合二区| 免费无码一区|