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

深入解讀 Flink 窗口的應(yīng)用與實(shí)現(xiàn)

共 6014字,需瀏覽 13分鐘

 ·

2021-09-21 20:26

本文主要分享 Flink 的 CheckPoint 機(jī)制、反壓機(jī)制及 Flink 的內(nèi)存模型。熟悉這 3 部分內(nèi)容是調(diào)優(yōu)的前提,文章主要從以下幾個(gè)方面分享:

  1. 原理剖析

  2. 性能定位

  3. 經(jīng)典場(chǎng)景調(diào)優(yōu)

  4. 內(nèi)存調(diào)優(yōu)

Checkpoint 機(jī)制

1.什么是 checkpoint

簡(jiǎn)單地說(shuō)就是 Flink 為了達(dá)到容錯(cuò)和 exactly-once 語(yǔ)義的功能,定期把 state 持久化下來(lái),而這一持久化的過(guò)程就叫做 checkpoint ,它是 Flink Job 在某一時(shí)刻全局狀態(tài)的快照。


當(dāng)我們要對(duì)分布式系統(tǒng)實(shí)現(xiàn)一個(gè)全局狀態(tài)保留的功能時(shí),傳統(tǒng)方案會(huì)引入一個(gè)統(tǒng)一時(shí)鐘,通過(guò)分布式系統(tǒng)中的 master 節(jié)點(diǎn)廣播出去給每一個(gè) slaves 節(jié)點(diǎn),當(dāng)節(jié)點(diǎn)接收到這個(gè)統(tǒng)一時(shí)鐘時(shí),它們就記錄下自己當(dāng)前的狀態(tài)即可。



但是統(tǒng)一時(shí)鐘的方式也存在一定的問(wèn)題,某一個(gè) node 進(jìn)行的 GC 時(shí)間比較長(zhǎng),或者 master 與 slaves 的網(wǎng)絡(luò)在當(dāng)時(shí)存在波動(dòng)而造成時(shí)鐘的發(fā)送延遲或者發(fā)送失敗,都會(huì)造成此 slave 和其它的機(jī)器出現(xiàn)數(shù)據(jù)不一致而最終導(dǎo)致腦裂的情況。如果我們想要解決這個(gè)問(wèn)題,就需要對(duì) master 和 slaves 做一個(gè) HA(High Availability)。但是,一個(gè)系統(tǒng)越是復(fù)雜,就越不穩(wěn)定且維護(hù)成本越高。


Flink 是將 checkpoint 都放進(jìn)了一個(gè)名為 Barrier 的流。



上圖中就是一個(gè) Barrier 的例子,從上游的第一個(gè) Task 到下游的最后一個(gè) Task,每次當(dāng) Task 經(jīng)過(guò)圖中藍(lán)色的柵欄時(shí),就會(huì)觸發(fā) save snapshot(快照)的功能。我們用一個(gè)例子來(lái)簡(jiǎn)單說(shuō)明。


2.實(shí)例分析


這是一個(gè)簡(jiǎn)單的 ETL 過(guò)程,首先我們把數(shù)據(jù)從 Kafka 中拿過(guò)來(lái)進(jìn)行一個(gè) trans 的轉(zhuǎn)換操作,然后再發(fā)送到一個(gè)下游的 Kafka


此時(shí)這個(gè)例子中沒(méi)有進(jìn)行 chaining 的調(diào)優(yōu)。所以此時(shí)采用的是 forward strategy ,也就是 “一個(gè) task 的輸出只發(fā)送給一個(gè) task 作為輸入”,這樣的方式,這樣做也有一個(gè)好處就是如果兩個(gè) task 都在一個(gè) JVM 中的話,那么就可以避免不必要的網(wǎng)絡(luò)開(kāi)銷(xiāo)


設(shè)置 Parallism 為 2,此時(shí)的 DAG 圖如下:



■ CK 的分析過(guò)程


每一個(gè) Flink 作業(yè)都會(huì)有一個(gè) JobManager ,JobManager 里面又會(huì)有一個(gè) checkpoint coordinator 來(lái)管理整個(gè) checkpoint 的過(guò)程,我們可以設(shè)置一個(gè)時(shí)間間隔讓 checkpoint coordinator 將一個(gè) checkpoint 的事件發(fā)送給每一個(gè) Container 中的 source task,也就是第一個(gè)任務(wù)(對(duì)應(yīng)并行圖中的 task1,task2)。


當(dāng)某個(gè) Source 算子收到一個(gè) Barrier 時(shí),它會(huì)暫停自身的數(shù)據(jù)處理,然后將自己的當(dāng)前 state 制作成 snapshot(快照),并保存到指定的持久化存儲(chǔ)中,最后向 CheckpointCoordinator 異步發(fā)送一個(gè) ack(Acknowledge character — 確認(rèn)字符),同時(shí)向自身所有下游算子廣播該 Barrier 后恢復(fù)自身的數(shù)據(jù)處理。


每個(gè)算子按照上面不斷制作 snapshot 并向下游廣播,直到最后 Barrier 傳遞到 sink 算子,此時(shí)快照便制作完成。這時(shí)候需要注意的是,上游算子可能是多個(gè)數(shù)據(jù)源,對(duì)應(yīng)多個(gè) Barrier 需要全部到齊才一次性觸發(fā) checkpoint ,所以在遇到 checkpoint 時(shí)間較長(zhǎng)的情況時(shí),有可能是因?yàn)閿?shù)據(jù)對(duì)齊需要耗費(fèi)的時(shí)間比較長(zhǎng)所造成的。


■ Snapshot & Recover


如圖,這是我們的 Container 容器初始化的階段,e1 和 e2 是剛從 Kafka 消費(fèi)過(guò)來(lái)的數(shù)據(jù),與此同時(shí),CheckpointCoordinator 也往它發(fā)送了 Barrier。



此時(shí) Task1 完成了它的 checkpoint 過(guò)程,效果就是記錄下 offset 為 2(e1,e2),然后把 Barrier 往下游的算子廣播,Task3 的輸入為 Task1 的輸出,現(xiàn)在假設(shè)我的這個(gè)程序的功能是統(tǒng)計(jì)數(shù)據(jù)的條數(shù),此時(shí) Task3 的 checkpoint 效果就是就記錄數(shù)據(jù)數(shù)為 2(因?yàn)閺?Task1 過(guò)來(lái)的數(shù)據(jù)就是 e1 和 e2 兩條),之后再將 Barrier 往下廣播,當(dāng)此 Barrier 傳遞到 sink 算子,snapshot 就算是制作完成了。



此時(shí) source 中還會(huì)源源不斷的產(chǎn)生數(shù)據(jù),并產(chǎn)生新的 checkpoint ,但是此時(shí)如果 Container 宕機(jī)重啟就需要進(jìn)行數(shù)據(jù)的恢復(fù)了。剛剛完成的 checkpoint 中 offset 為 2,count 為 2,那我們就按照這個(gè) state 進(jìn)行恢復(fù)。此時(shí) Task1 會(huì)從 e3 開(kāi)始消費(fèi),這就是 Recover 操作。



■ checkpoint 的注意事項(xiàng)

下面列舉的 3 個(gè)注意要點(diǎn)都會(huì)影響到系統(tǒng)的吞吐,在實(shí)際開(kāi)發(fā)過(guò)程中需要注意:



3.背壓的產(chǎn)生及 Flink 的反壓處理

在分布式系統(tǒng)中經(jīng)常會(huì)出現(xiàn)多個(gè) Task 多個(gè) JVM 之間可能需要做數(shù)據(jù)的交換,我們使用生產(chǎn)者和消費(fèi)者來(lái)說(shuō)明這個(gè)事情。



假設(shè)我現(xiàn)在的 Producer 是使用了無(wú)界 buffer 來(lái)進(jìn)行存儲(chǔ),當(dāng)我們的生產(chǎn)者生產(chǎn)速度遠(yuǎn)大于消費(fèi)者消費(fèi)的速度時(shí),生產(chǎn)端的數(shù)據(jù)會(huì)因?yàn)橄M(fèi)端的消費(fèi)能力低下而導(dǎo)致數(shù)據(jù)積壓,最終導(dǎo)致 OOM 的產(chǎn)生。



而就算使用了有界 buffer,同樣消費(fèi)者端的消費(fèi)能力低下,當(dāng) buffer 被積滿時(shí)生產(chǎn)者就會(huì)停止生產(chǎn),這樣還不能完全地解決我們的問(wèn)題,所以就需要根據(jù)不同的情況進(jìn)行調(diào)整。


Flink 也是通過(guò)有界 buffer 來(lái)進(jìn)行不同 TaskManager 的數(shù)據(jù)交換。而且做法分為了靜態(tài)控流和動(dòng)態(tài)控流兩種方式。



簡(jiǎn)單來(lái)說(shuō)就是當(dāng)生產(chǎn)者比消費(fèi)者的 TPS 多時(shí),我們采用溢寫(xiě)的方式,使用 batch 來(lái)封裝好我們的數(shù)據(jù),然后分批發(fā)送出去,每次發(fā)送完成后再 sleep 一段時(shí)間,這個(gè)時(shí)間的計(jì)算方式是 left(剩余的數(shù)據(jù))/ tps,但是這個(gè)做法是很難去預(yù)估系統(tǒng)的情況的。



Flink 1.5 之前的流控是基于 TCP 的滑動(dòng)窗口實(shí)現(xiàn)的,在之前的課程中已經(jīng)有提到過(guò)了。而 Flink 在 1.5 之后已經(jīng)棄用了該機(jī)制,所以這里不展開(kāi)說(shuō)明。在此網(wǎng)絡(luò)模型中,數(shù)據(jù)生成節(jié)點(diǎn)只能通過(guò)檢查當(dāng)前的 channel 是否可寫(xiě)來(lái)決定自己是否要向消費(fèi)端發(fā)送數(shù)據(jù),它對(duì)下游數(shù)據(jù)消費(fèi)端的真實(shí)容量情況一概不知。這就導(dǎo)致,當(dāng)生成節(jié)點(diǎn)發(fā)現(xiàn) channel 已經(jīng)不可寫(xiě)的時(shí)候,有可能下游消費(fèi)節(jié)點(diǎn)已經(jīng)積壓了很多數(shù)據(jù)。


Credit-Based 我們用下面的數(shù)據(jù)交換的例子說(shuō)明:


Flink 的數(shù)據(jù)交換大致分為三種,一種是同一個(gè) Task 的數(shù)據(jù)交換,另一種是 不同 Task 同 JVM 下的數(shù)據(jù)交換。第三種就是不同 Task 且不同 JVM 之間的交換。



同一個(gè) Task 的數(shù)據(jù)交換就是我們剛剛提到的 forward strategy 方式,主要就是避免了序列化和網(wǎng)絡(luò)的開(kāi)銷(xiāo)。



第二種數(shù)據(jù)交換的方式就是數(shù)據(jù)會(huì)先通過(guò)一個(gè) record Writer ,數(shù)據(jù)在里面進(jìn)行序列化之后再傳遞給 Result Partition ,之后數(shù)據(jù)會(huì)通過(guò) local channel 傳遞給另外一個(gè) Task 的 Input Gate 里面,再進(jìn)行反序列化,推送給 Record Reader 之后進(jìn)行操作。



因?yàn)榈谌N數(shù)據(jù)交換涉及到了不同的 JVM,所以會(huì)有一定的網(wǎng)絡(luò)開(kāi)銷(xiāo),和第二種的區(qū)別就在于它先推給了 Netty ,通過(guò) netty 把數(shù)據(jù)推送到遠(yuǎn)程端的 Task 上。


■ Credit-Based


此時(shí)我們可以看到 event1 已經(jīng)連帶一個(gè) backlog = 1 推送給了 TaskB,backlog 的作用其實(shí)只是為了讓消費(fèi)端感知到我們生產(chǎn)端的情況



此時(shí) event1 被 TaskB 接收后,TaskB 會(huì)返回一個(gè) ack 給 TaskA,同時(shí)返回一個(gè) credit = 3,這個(gè)是告知 TaskA 它還能接收多少條數(shù)據(jù),F(xiàn)link 就是通過(guò)這種互相告知的方式,來(lái)讓生產(chǎn)者和消費(fèi)者都能感知到對(duì)方的狀態(tài)。



此時(shí)經(jīng)過(guò)一段時(shí)間之后,TaskB 中的有界 buffer 已經(jīng)滿了,此時(shí) TaskB 回復(fù) credit = 0 給 TaskA,此時(shí) channel 通道將會(huì)停止工作,TaskA 不再將數(shù)據(jù)發(fā)往 TaskB。




此時(shí)再經(jīng)過(guò)一段時(shí)間,TaskA 中的有界 Buffer 也已經(jīng)出現(xiàn)了數(shù)據(jù)積壓,所以我們平時(shí)遇到的吞吐下降,處理延遲的問(wèn)題,就是因?yàn)榇藭r(shí)整個(gè)系統(tǒng)相當(dāng)于一個(gè)停滯的狀態(tài),如圖二示,所有的過(guò)程都被打上 “X”,表示這些過(guò)程都已經(jīng)停止工作。



JVM 是一個(gè)非常復(fù)雜的系統(tǒng),當(dāng)其內(nèi)存不足時(shí)會(huì)造成 OOM ,導(dǎo)致系統(tǒng)的崩潰。Flink 在拿到我們分配的內(nèi)存之后會(huì)先分配一個(gè) cutoff 預(yù)留內(nèi)存,保證系統(tǒng)的安全性。Netword buffers 其實(shí)就是對(duì)應(yīng)我們剛剛一直提到的有界 buffer,momery manager 是一個(gè)內(nèi)存池,這部分的內(nèi)存可以設(shè)置為堆內(nèi)或者堆外的內(nèi)存,當(dāng)然在流式作業(yè)中我們一般設(shè)置其為堆外內(nèi)存,而 Free 部分就是提供給用戶使用的內(nèi)存塊。


現(xiàn)在我們假設(shè)分配給此 TaskManager 的內(nèi)存是 8g。


  • 首先是要砍掉 cutoff 的部分,默認(rèn)是 0.25,所以我們的可用內(nèi)存就是 8gx0.75

  • network buffers 占用可用內(nèi)存的 0.1 ,所以是 6144x0.1

  • 堆內(nèi)/堆外內(nèi)存為可用內(nèi)存減去 network buffers 的部分,再乘以 0.8

  • 給到用戶使用的內(nèi)存就是堆內(nèi)存剩下的 0.2 那部分

其實(shí)真實(shí)情況是 Flink 是先知道了 heap 內(nèi)存的大小然后逆推出其它內(nèi)存的大小。


Flink 作業(yè)的問(wèn)題定位

1.問(wèn)題定位口訣

一壓二查三指標(biāo),延遲吞吐是核心。時(shí)刻關(guān)注資源量 ,  排查首先看 GC?!?/p>


一壓是指背壓,遇到問(wèn)題先看背壓的情況,二查就是指 checkpoint ,對(duì)齊數(shù)據(jù)的時(shí)間是否很長(zhǎng),state 是否很大,這些都是和系統(tǒng)吞吐密切相關(guān)的,三指標(biāo)就是指 Flink UI 那塊的一些展示,我們的主要關(guān)注點(diǎn)其實(shí)就是延遲和吞吐,系統(tǒng)資源,還有就是 GC logs。

  • 看反壓:通常最后一個(gè)被壓高的 subTask 的下游就是 job 的瓶頸之一。

  • 看 Checkpoint 時(shí)長(zhǎng):Checkpoint 時(shí)長(zhǎng)能在一定程度影響 job 的整體吞吐。

  • 看核心指標(biāo):指標(biāo)是對(duì)一個(gè)任務(wù)性能精準(zhǔn)判斷的依據(jù),延遲指標(biāo)和吞吐則是其中最為關(guān)鍵的指標(biāo)。

  • 資源的使用率:提高資源的利用率是最終的目的。

■ 常見(jiàn)的性能問(wèn)題


簡(jiǎn)單解釋一下:

  • 在關(guān)注背壓的時(shí)候大家往往忽略了數(shù)據(jù)的序列化和反序列化過(guò)程所造成的性能問(wèn)題。

  • 一些數(shù)據(jù)結(jié)構(gòu),比如 HashMap 和 HashSet 這種 key 需要經(jīng)過(guò) hash 計(jì)算的數(shù)據(jù)結(jié)構(gòu),在數(shù)據(jù)量大的時(shí)候使用 keyby 進(jìn)行操作, 造成的性能影響是非常大的。

  • 數(shù)據(jù)傾斜是我們的經(jīng)典問(wèn)題,后面再進(jìn)行展開(kāi)。

  • 如果我們的下游是 MySQL,HBase 這種,我們都會(huì)進(jìn)行一個(gè)批處理的操作,就是讓數(shù)據(jù)存儲(chǔ)到一個(gè) buffer 里面,在達(dá)到某些條件的時(shí)候再進(jìn)行發(fā)送,這樣做的目的就是減少和外部系統(tǒng)的交互,降低網(wǎng)絡(luò)開(kāi)銷(xiāo)的成本。

  • 頻繁 GC ,無(wú)論是 CMS 也好,G1 也好,在進(jìn)行 GC 的時(shí)候,都會(huì)停止整個(gè)作業(yè)的運(yùn)行,GC 時(shí)間較長(zhǎng)還會(huì)導(dǎo)致 JobManager 和 TaskManager 沒(méi)有辦法準(zhǔn)時(shí)發(fā)送心跳,此時(shí) JobManager 就會(huì)認(rèn)為此 TaskManager 失聯(lián),它就會(huì)另外開(kāi)啟一個(gè)新的 TaskManager

  • 窗口是一種可以把無(wú)限數(shù)據(jù)切割為有限數(shù)據(jù)塊的手段。比如我們知道,使用滑動(dòng)窗口的時(shí)候數(shù)據(jù)的重疊問(wèn)題,size = 5min 雖然不屬于大窗口的范疇,可是 step = 1s 代表 1 秒就要進(jìn)行一次數(shù)據(jù)的處理,這樣就會(huì)造成數(shù)據(jù)的重疊很高,數(shù)據(jù)量很大的問(wèn)題。

2.Flink 作業(yè)調(diào)優(yōu)



我們可以通過(guò)一些數(shù)據(jù)結(jié)構(gòu),比如 Set 或者 Map 來(lái)結(jié)合 Flink state 進(jìn)行去重。但是這些去重方案會(huì)隨著數(shù)據(jù)量不斷增大,從而導(dǎo)致性能的急劇下降,比如剛剛我們分析過(guò)的 hash 沖突帶來(lái)的寫(xiě)入性能問(wèn)題,內(nèi)存過(guò)大導(dǎo)致的 GC 問(wèn)題,TaskManger 的失聯(lián)問(wèn)題。






方案二和方案三也都是通過(guò)一些數(shù)據(jù)結(jié)構(gòu)的手段去進(jìn)行去重,有興趣的同學(xué)可以自行下去了解,在這里不再展開(kāi)。


■ 數(shù)據(jù)傾斜


數(shù)據(jù)傾斜是大家都會(huì)遇到的高頻問(wèn)題,解決的方案也不少。



第一種場(chǎng)景是當(dāng)我們的并發(fā)度設(shè)置的比分區(qū)數(shù)要低時(shí),就會(huì)造成上面所說(shuō)的消費(fèi)不均勻的情況。



第二種提到的就是 key 分布不均勻的情況,可以通過(guò)添加隨機(jī)前綴打散它們的分布,使得數(shù)據(jù)不會(huì)集中在幾個(gè) Task 中。



在每個(gè)節(jié)點(diǎn)本地對(duì)相同的 key 進(jìn)行一次聚合操作,類(lèi)似于 MapReduce 中的本地 combiner。map-side 預(yù)聚合之后,每個(gè)節(jié)點(diǎn)本地就只會(huì)有一條相同的 key,因?yàn)槎鄺l相同的 key 都被聚合起來(lái)了。其他節(jié)點(diǎn)在拉取所有節(jié)點(diǎn)上的相同 key 時(shí),就會(huì)大大減少需要拉取的數(shù)據(jù)數(shù)量,從而也就減少了磁盤(pán) IO 以及網(wǎng)絡(luò)傳輸開(kāi)銷(xiāo)。


■ 內(nèi)存調(diào)優(yōu)

Flink 的內(nèi)存結(jié)構(gòu)剛剛我們已經(jīng)提及到了,所以我們清楚,調(diào)優(yōu)的方面主要是針對(duì) 非堆內(nèi)存 Network buffer ,manager pool 和堆內(nèi)存的調(diào)優(yōu),這些基本都是通過(guò)參數(shù)來(lái)進(jìn)行控制的。



這些參數(shù)我們都需要結(jié)合自身的情況去進(jìn)行調(diào)整,這里只給出一些建議。而且對(duì)于 ManagerBuffer 來(lái)說(shuō),F(xiàn)link 的流式作業(yè)現(xiàn)在并沒(méi)有過(guò)多使用到這部分的內(nèi)存,所以我們都會(huì)設(shè)置得比較小,不超過(guò) 0.3。



堆內(nèi)存的調(diào)優(yōu)是關(guān)于 JVM 方面的,主要就是將默認(rèn)使用的垃圾回收器改為 G1 ,因?yàn)槟J(rèn)使用的 Parallel Scavenge 對(duì)于老年代的 GC 存在一個(gè)串行化的問(wèn)題,它的 Full GC 耗時(shí)較長(zhǎng),下面是關(guān)于 G1 的一些介紹,網(wǎng)上資料也非常多,這里就不展開(kāi)說(shuō)明了。





總 結(jié)

本文帶大家了解了 Flink 的 CheckPoint 機(jī)制、反壓機(jī)制及 Flink 的內(nèi)存模型和基于內(nèi)存模型分析了一些調(diào)優(yōu)的策略,希望能對(duì)大家有所幫助。

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

手機(jī)掃一掃分享

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

手機(jī)掃一掃分享

分享
舉報(bào)

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

国产秋霞理论久久久电影-婷婷色九月综合激情丁香-欧美在线观看乱妇视频-精品国avA久久久久久久-国产乱码精品一区二区三区亚洲人-欧美熟妇一区二区三区蜜桃视频 91在线观看| 五月激情久久| 色欲国产精品欧美在线密| 91在线超碰| 久久久久久久久久国产| 玖玖爱这里只有精品| 最新中文字幕在线播放| 操逼一区| 亚洲中文AV| 99热5| 成人av免费观看| 免费观看日韩无码视频| 69久久久久久久久久| av无码在线播放| 三级免费| 麻豆视频免费观看| 福利导航视频| 起碰在线视频| 伊人三区| 日韩毛片视频| 亚洲黄色免费网站| 成人免费视频国产免费麻豆,| 国产午夜激情视频| 91无码一区二区三区| 日韩成人在线看| 亚洲性爱网站| 一级免费黄色电影| 国产精品av在线| 亚洲av自拍| 激情视频综合网| 国产a毛一级,a毛一级| 天堂资源地址在线| 日日撸| 怡春院av| 免费操| 亚洲电影AV| 九九热视频99| 国产精品香蕉国产| 亚洲精品一区二区三区四区高清 | 日逼导航| 日韩人妻午夜| 懂色午夜福利一区二区三区| 国产一区二区av| 国产主播福利| 欧美日韩在线视频观看| 国产精品成人一区二区| a片一级片| 午夜福利在线播放| 亚洲无码高清电影| av在线资源网站| 国产熟妇码视频黑料| 国产在线第一页| 亚洲精品97久久中文字幕| 五月无码| 先锋资源av在线| 久久精品一二三| 九色91PORNY国产| 91香蕉网站| 美日韩综合| 人人狠狠综合婷婷| 国产小视频在线| 欧美黄色免费看| 亚洲三级在线播放| 性无码一区二区三区无码免费| 精品久久久国产| 日本欧美在线视频| 日韩精品成人免费观看视频| 在线中文字幕亚洲| 嫩草在线播放| 超碰在线播| 十八禁网站在线观看| 国产A级成人婬片1976| 2025av中文字幕| 特级丰满少妇一级AAAA爱毛片| www.大鸡巴| 欧美日韩国产成人| 国产www在线观看| 九色一区| 婷婷五月天国产| 成人看片| 成人电影一区二区| 欧洲成人在线观看| 伊人影院在线观看| 亚洲成人无码在线播放| 国产美女一级真毛片酒店| www.中文无码| 在线天堂999| 97视频精品| 91精品丝袜久久久久久| 性免费网站| 午夜福利老司机| 免费观看黄片网站| 久一区| 综合网在线| 熟妇精品| 日韩xxx视频| 污污污污污www在线观看优势 | 健身房被教练3p喷水了| AV成人| 操久久| 亚洲韩国中文字幕| 懂色中文字幕| 人妻少妇偷人精品无码免费| www.国产豆花精品区| 就去se超碰| 亚洲日韩中文字幕| A一级横色大片| 国产又粗又长又硬黄色一级片| 日韩黄色片| 天堂在线视频| 亚洲成人少妇老妇a视频在线| 91干穴穴在线观看| A区性愛社区| 亚洲无码中文人妻| 亚洲日操| 性爱视频亚洲| 苍井空在线播放| 午夜AV福利影院| 亚洲色男人天堂| 日韩无码黄色电影| 在线观看一级片| 亚洲Av秘无码一区二区| 91精品视频在线免费观看| 欧美成人国产| AV在线导航| 日韩在线三级片| 波多野结衣一二三区| 日本久热| 各国熟女HD合集| 91精品国产综合久久久蜜臀主演| 色五月婷婷综合| 影音先锋国产资源| 欧美性爱在线视频| 国产高清免费视频| av无码在线观看| 国产精品乱伦| 龙泽美曦土豪| 西西www444无码大胆| 91久久久久久久久久久| 亚洲色婷婷在线| 久久黄色视屏| 老女人网站| 欧美日韩色图| 国产成人精品123区免费视频| 亚洲欧洲精品在线| 一本一道无码| 久久精品免费观看| 亚洲狼人| 亚洲欧美熟妇久久久久久久久| 成人h网站在线观看| 精品精品视频| 九九射| 人人干人人操人人| 成人毛片18女人毛片真水| 五月天色色网站| 宗合久久| 97超碰人妻| 欧美日韩免费看| 亚洲视屏| 亚洲草逼视频| 一级a一级a爰片免费免免在线 | 7799精品视频| 免费A级毛片| 亚洲第一狼人综合网| 国产乱婬AV片免费| 色悠悠中文字幕| 亚洲激色| 家庭乱伦AV| 中国老女人操逼视频| 操欧美逼| 狼友视频在线观看18| 亚洲AV无码一区二区三竹菊| 久久久久久99| 西欧超碰在线| 91探花在线播放| 一区二区三区久久久久〖网:.〗 | 你懂的视频| 亚洲猛男操逼欧美国产视频| 亚洲AV无码成人精品久久久| 国产亚洲精品久久久波多野结衣 | 亚洲精品无码视频在线观看| 日韩欧美中文在线| 97精品人妻一区二区三区| 国产中文字幕亚洲综合欧美| 无码日韩成人| 国精产品一区一区三区有限公司杨| 欧美日韩一区视频| 日韩中文字码无砖| 午夜九九| 亚洲三级视频| 91美女在线观看| 日韩欧美性爱视频| 久久黄色精品视频| 日韩av免费看| 夜夜操免费视频| 俺来也操逼| 亚洲精品国产精品乱码不卡√香蕉 | 男人天堂v| 欧美日韩中文字幕无码| 黄色成人视频网站| 中文字幕精品一级A片| 日韩av小电影| 99精品无码| 人人操人| 999久久精品| 欧美成人性爱影院| 国产亚洲色婷婷久久99精品| 日韩欧美成人视频| 黄片网站免费| 北条麻妃无码在线视频| 亚洲无码av网站| 免费无码又爽又黄又刺激网站| 思思精品在线| 这里精品| 午夜福利aaa| 青青青视频在线| 久久777| 特黄A级毛片| 黄色福利视频在线观看| 淫色淫香综合网| 青青草青娱乐| 国产精品HongKong麻豆| 少妇成人网| 日本成人高清视频| 九色影院| 色欲国产精品欧美在线密| 国产熟妇搡BBBB搡BBBB搡| 激情五月激情综合网| 亚洲成人网在线| 无码一区二区三区免费| 免费操逼网址| 99久久婷婷国产综合| 三级片日韩| 精品福利视频导航| 成人网站视频在线免费观看| 夜夜爽7777精品国产三级| 九九在线观看视频| 日日干夜夜操| 成人二区三区| 欧美成人免费在线| 色情电影网站| 国产成人精品AV| 一级无码在线| 曰曰摸日日碰| 97超碰人人操| 国产91探花系列在线观看 | 亚洲第九页| 在线观看你懂得| 最新97色黄色精品高清网站| 亚洲五月天色| 91农村站街老熟女露脸| 天天爱天天射| 丁香五月婷婷视频| 国产免费无码视频| 人妻少妇无码| 婷婷开心五月天| 婷婷国产成人精品视频| 五月天欧美性爱| 免费看黄片网站| 日韩字幕无码| 99热在线观看免费| 日韩精品视频在线| 粉嫩99精品99久久久久久特污兔 | 国产视频999| 北条麻妃无码精品AV| 亚洲欧美成人| 美女网站永久免费观看| 88AV在线播放| 亚洲一级黄色电影| 国产精品毛片VA一区二区三区| 俺去也在线视频| 青娱乐超碰在线| 国产精品自拍一区| 午夜黄色大片| 欧美激情综合色综合啪啪五月| 77q视频| 免费内射网站| 亚洲中文AV| 亚洲午夜精品久久久久久APP| 二区精品| 亚洲无码在线播放| 爱视频福利网| 国产精品久久久久久精| 日韩一级欧美一级| 成人无码欧美大片免费看| 婷婷国产视频| 国产一区免费| 欧美日韩免费在线视频| 亚洲午夜免费视频| 91精品无码| 黄色视频在线观看| 丝袜人妻| 97在线鲁碰免费视频| 美女特黄视频| 亚洲欧美成人网| 国产在线一二三| 欧美日韩无码视频| 免费性爱视频网站| 欧美精品操逼| 一区成人| 人人摸人人看| 天天色粽合合合合合合合| 一级大片| 成人午夜A片免费看| 日韩av高清| 日韩免费av| 无码在线播放视频| 日韩高清无码一区二区三区| 久久久久久国际四虎免费精品视频| 在线免费中文字幕| 青青成人| 人人射人人摸| 最新色站| 伊人在线成人视频| 成人小视频在线| 大香蕉中文| 91精品国产91久久久久久吃药| 国产av一级片| 亚洲精品国产精品乱码视99| 久久婷婷国产麻豆91天堂| 51妺妺嘿嘿午夜成人A片| 欧美男女交配视频| 中文字幕无码亚| 日韩亚洲中文在线| 久热视频在线| 免费亚洲婷婷| 久久亚洲精品视频| 日韩精品久久久久久久| 男女做爱无码| 一区二区三区无码免费| 婷婷久草网| 人人色人人看| 9I看片成人免费视频| 久久久久999| 91在线精品一区二区| 日韩干| A毛片| 人妻人人干| 黄网免费观看| 2025最新偷拍| 成人精品一区二区区别解析| 日韩精品在线视频| 亚洲无码激情视频| 免费黄片在线看| 五月天综合在线| 韩国精品无码一区二区三区18| 亚洲成人电影天堂| 在线天堂av| 免费黄色大片网站| 国产99久久九九精品无码免费| 短发妹子双人啪啪秀| 成人激情免费视频| 日韩国产在线| 激情五月婷婷综合| 天天爽日日澡AAAA片| 日韩超清无码| 91麻豆国产| yw尤物在线| 91绿帽人妻-ThePorn| 久久久久99| 日本丰满老熟妇乱子伦| 伊人在线综合| 无码一二三四| 亚洲AV资源在线| 91人妻人人澡人人| 色哟哟一区二区三区四区| 亚洲黄色小视频| 97黄色| 亚洲色在线观看| AAA级片| 天天视频黄色| 人人爱人人爽人人操| 午夜色婷婷| 日韩欧美中文在线观看| 粉嫩av懂色av蜜臀av分享| 久久精品视频在线免费观看| 色情电影网站| 天天干在线观看视频| A级片在线观看| 亚洲AV无码高清| 欧美中出| 伊人久久大香蕉国产| 成人精品影视| 五月丁香综合在线| 国产一级AAAAA片免费| www黄色com| 日日夜夜干| 91九色TS另类国产人妖| 五月婷婷丁香| 97无码精品人妻一区二区三区 | 怡红院成人网| 91成人在线电影| 韩国GOGOGO高清| 日韩爱爱免费视频| 91丨豆花丨成人熟女| 日韩精品综合| 秋霞网一区二区| 丰满人妻一区二区三区蜜桃视频| 91无码一区二区| 婷婷操| 国产女人在线视频| 免费在线成人网| 免费在线观看无码视频| 99精品六月婷婷综合在线| 日韩中文字幕网站| 国产乱伦精品视频| 亚洲小视频在线| 国产精品人妻无码一区牛牛影视| 天天av天天av天天爽| 苍井空无码在线观看| 国产福利视频在线观看| 无码人妻丰满熟妇区蜜桃| 欧美精品久久久久久久久爆乳| 秋霞午夜视频| 久久久久亚洲AV成人片乱码| 天天色av| 少妇人妻AV| 亚洲一区二区在线| 亚洲av偷拍| 999国产精品视频| 麻豆国产一区二区三区四区| 最新中文| 精品视频在线播放| 国产成人精品麻豆| 福利黄色片:片| 丁香五月婷婷网| 亚洲天堂三级片| 亚洲电影在线观看| 西西特级WWW444无码| 青草久在线| 免费黄色视频观看| 91亚洲国产成人精品一区二区三 | 国产黄色网页| 2025中文字幕在线| 佳佳女王footjob超级爽| 四虎在线观看一区网址| 加勒比综合无码| 91精品人妻一区二区三区| 欧美成人看片黄a免费看| 最新AV在线播放| 内射在线| 国内自拍欧美| 99视频在线免费观看| JULIA超乳JULIA无码| 444444在线观看免费高清电视剧木瓜一 | 亚洲日韩在线视频播放| 国产精品成人无码免费| 美女扣穴| 人人人操人人| 色婷婷视频在线| 操逼网五月天| 亚洲国产精品成人va在线观看| www.亚洲精品| 伊人久久无码| 中文字幕在线看成人电影| 黄色片视频在线观看| 国产主播专区| 国产成人精品八戒| 狼友视频在线免费观看| 精品热99| 水蜜桃网站| 午夜成人AV| 国产18水真多18精品| 成人毛片网| 日韩视频精品| 国产乱子伦真实精品!| 就要操| 欧美精品人妻| 99热精品免费观看| 中文字幕你懂的在线三级| 日韩精品一二三| 欧美视频h| 婷婷激情丁香五月天| www.国产在线观看| aaa三级黄片| 国产精品特级毛片| 日本色色视频| 亚洲大片免费看| 亚洲日韩AV电影| 亚洲精品秘一区二区三区蜜桃久| 午夜福利影视| 高清不卡一区二区| 91熟女丰满原味| 91精品国产偷窥一区二区| 可以免费观看的毛片| 日P免费视频| 青青草操逼视频| 久久久久麻豆V国产精华液好用吗| 无码人妻精品一区二区三区温州| 日韩天天操| 亚洲精品不卡| 日本成人一区二区三区| 成人区123| 午夜性福利| 99久在线视频| 欧美性爱在线网站| 国产精品自拍视频| 日韩精品91| 91精品国产成人做爰观看奶头| 日本午夜三级视频| 在线一区二区三区四区| 中国黄色学生妹一级片| 国产小福利| 女人A片一级黄色| 做爱网站免费| 成人AV片导航| 双腿张开被9个男人调教| 懂色中文字幕| 操啊操| 伊人精品A片一区二区三区| 淫色AV| 日韩免费视频| AV三级片在线观看| 精品人妻午夜| 2022天天干| 成人在线免费观看国产| 在线看黄色片| 四虎AV在线| 中文字幕免费av| 美日毛片| jizz在线观看视频| 精品国产三级片| 伊人大香在线| 日本a片免费| 国产高清视频在线| 日韩欧美小视频| 久久这里只有精品9| 好看的中文字幕av| 麻豆天美传媒AV果冻传媒| 欧美成在线| 国产精品三| 特一级A片| 日本无码片| 性色网站| 成人视频无码| 欧洲精品视频在线观看| 国产人成| 蜜臀久久99精品久久一区二区| AV黄片| 黄色A片在线观看| 丁香五月婷婷久久| 日韩欧美在线免费| 亚洲美女网站在线观看| 国产精品123区| 91亚洲国产成人精品一区| 激情人妻av| 粉嫩99精品99久久久久久特污| 色色视频免费看| av无码在线观看| 蜜桃秘av一区二区三区安全| 久久久久久无码| 操逼123首页| 久久综合站| 日日射人妻| 动漫3d啪啪成人h动漫| 99日韩| 不卡a12| 麻豆秘在线观看国产| 国产精品一品二区三区的使用体验| 在线观看黄| 中文字幕熟女人妻| 成人视频一区| 欧美日韩一区二区三区四区| 亚洲少妇性爱视频| 国产A级成人婬片1976| 久久久久久国产| 蜜桃91视频| 无码一区二区三区四区五区六区| 久草视频福利在线| 99久久大香蕉| www久草| 国产激情欧洲在线观看一区二区三区| 西西888WWW大胆无码| 午夜福利资源| 国产一级片在线| 国产熟妇码视频app| 乱伦一区二区三区| 日韩v欧美v日本v亚洲v国产v| 天天操天天操免费视频| 免费看无码一级A片放24小时| 亚洲无码小电影| 91麻豆香蕉| 日韩不卡电影| 久久无码专区| 国产suv精品一区二区6精华液 | 日屄电影| 亚洲操逼图片| 91精品国产闺蜜国产在线闺蜜| 亚洲色图15p| 91中文字幕在线| 99自拍| 精品成人A片久久久久久不卡三区| 欧美日韩不卡视频| 亚洲日韩精品无码| 黑人精品XXX一区一二区| 操日视频| 大香蕉在线免| 日韩三区| 精品二区| 国产黄页| 肉乳无码A片av| 黄色视频免费播放| 黄色电影一区二区| 国产人体视频| 九九久久久久| 无码欧美精品一区二区| 亚洲偷拍中文| 午夜福利啪啪啪| 日韩在线观看| 五月天婷婷色| 久久精品视频18| 日韩综合久久| 日韩在线精品视频| 日日摸日日操| 色色五月天视频| xxxxxbbbbb| 人人舔人人草| 2017天天干天天射| 蜜桃在线一区| 中文字幕天堂网| 成人操B视频在线观看| 中文字幕成人| 伊人网在线播放| 国产乱妇无码毛片A片在线看下载 日韩电影免费在线观看中文字幕 欧美性爱中文字幕 | 国产激情无码免费| 中文字幕性爱电影| 免费看片av| 精品久久久999| 亚洲AV无码一区二区三区少妇| 亚洲精品天堂无码AV片| 无码人妻AⅤ一区二区三区A片一| 成人做爰A片一区二区| 91人人干| 欧美成在线| 91亚洲国产成人精品一区| 一本一道无码免费看视频| 国内成人AV| 免费在线观看黄视频| 天天爽天天爽成人A片影院| 亚洲欧美视频一区| 中文字幕精品一区| 一插菊花综合视频| 成人精品一区二区三区无码视频| 狼色AV| 亚洲美女网站免费观看网址 | 日韩久久精品| 天天av天天av天天爽| 黄色成人视频| 亚洲日韩中文无码| 中文字幕日韩人妻在线| 综合五月| 操小骚逼视频| 国产黄A片免费网站免费| 中文字幕一区二区三区四区在线视频 | 午夜黄色福利| 西西人体大胆ww4444| 精品无码在线| 高H视频在线观看| 人人澡人人添人人爽人人| 丁香六月综合| 国产精品爽爽久久久久| 国产精彩视频| 哪里可以看毛片| 黄片免费视频在线观看| 黄色A片在线观看| 国产成人免费观看| 在线看黄网站| 五月婷丁香| 亚洲中文字幕一区二区| 人人妻人人澡人人爽人人DVD| 五月色综合| 翔田千里无码XXXXXX| 91免费视频在线| 婷婷啪啪| 少妇免费视频| 久热免费视频| 色色婷婷五月天| 国产黄色一级片| 操逼视频,黄色大全| www.色999| 人人操人人看人人摸| 精品无码久久| 成人电影三区| 成人国产精品秘欧美高清| 91丨九色丨蝌蚪丨对白| 色婷婷中文在线| 国产美女被爽到高潮免费A片软件| 五月天久久综合| 婷婷无码成人精品俺来俺去| 国产精品久久久久久婷婷天堂| 嫩BBB槡BBBB槡BBBB百度| 亚洲有码中文字幕| 北条麻妃波多波多野结衣| 亚洲v区| 免费日韩视频| 亚洲午夜久久久久久久久红桃| 亚洲无码电影网站| 色婷婷中文字幕| 高清无码免费观看| 嫩草av| 国产天堂| 性色aV中文字幕| 欧美精品一区二区少妇免费A片| 色色色999| 大香蕉亚洲网| 你懂得视频在线观看| 亚洲AV无码乱码国产精品黑人 | 国产三级片网站| www.操操网| 少妇搡BBBB搡BBB搡打电话| 激情婷婷色五月| 一级a一级a爰片免费免免中国A片| 国产免费AV在线观看| 91污视频在线观看| 天码人妻一区二区三区在线看| 国产精品无码ThePorn| AV在线免费观看网址| 护士小雪的yin荡高日记H视频 | 秒播福利| 麻豆疯狂做受XXXX高潮视频 | 一级特黄色片| 国产豆花视频| 国产亚洲一区二区三区| 天天色av| 亚洲午夜AV久久乱码| 高清无码免费视频| 精品AV无码一区二区三区| 亚洲精品国产精品乱码不卡√香蕉 | 国产一级片免费观看| 爱搞搞就搞搞| 欧美中文字幕在线| 色婷婷黄色| 懂色一区二区二区在线播放视频| 日韩精品网址| 日韩中文AV| 影音先锋麻豆| 男女啪啪| 亚洲精品中文字幕无码| 婷婷五月亚洲| 天天影视综合网免费观看电视剧国产| 败火老熟女ThePorn视频 | 一本视频| 日韩午夜无码| 91久久午夜无码鲁丝片久久人妻| 高潮流水视频| 亚欧免费视频| 久久天堂网| 日韩在线一区二区| 一品国精和二品国精的文化意义| 淫香欲色| 丁香婷婷综合网| 国产乱伦中文字幕| 无码视频一区二区三区| 亚洲精品国产AV| 日本在线播放| 西西444大胆无码视频| 婷婷视频网| 蜜桃91在线观看| 久久国产高清| 精品无码在线| 色接久久| 二区AV| 色小哥| 中文字幕视频免费| 九九热av| 色婷婷中文字幕| www.欧美日韩| 豆花成人在线| yjizz国产| 人妻斩り43歳| 牛牛影视av老牛影视av| 国产一页| 国产大奶一区二区| 黄片中文| 丁香六月久久| 国产综合网站| 今天成全在线观看高清| 黄片视频在线观看| 国产一区视频在线| 亚洲精品麻豆| 无码视频在线看| 欧美成人在线观看视频| 日本黄色免费视频| 夜色福利网| 高清无码视频免费看| 只有精品| 日本韩国无码| 91中文字幕在线观看| 国产精品秘精东影业| 91人人妻人人澡人人爽人人精品| 色乱视频| 91蝌蚪在线| 性爱免费视频| AV青青草原| 豆花成人视频在线观看| A片在线观看免费| 亚洲激情AV| 色人阁人妻中文字幕| 国产成人久久精品麻豆二区| 2025最新国产成人精品| 黄片网站在线看| 91av电影| 日韩精品久| 免费的黄片| 国产成人精品久久久| 久草免费在线视频| 大香蕉最新国产2025| 婷婷综合av| 无码潮喷| 亚洲成人视屏| 成人网站在线免费观看| 无码AV天堂| 99久热在线精品视频| 囯产精品久久久久久久久| 成人网在线视频| 亚洲色婷| 日本白浆| 无码不卡在线观看| 中文字幕在线免费| 中文字幕www一区| 天天艹天天干| 亚洲日韩激情| 黄色激情网站| 拍拍拍免费视频| 五月丁香激情婷婷| 国产h在线观看| yOujiZZ欧美精品| 色视频网| 中文在线字幕免费观看| 麻豆精品久久久久久久99蜜桃| 阿拉伯三级片| 日本免费色视频| 羞羞视频com.入口| 日韩视频在线免费观看| 国产一区在线播放| 亚洲A片一区二区三区电影网 | 丁香婷婷色五月| 91麻豆成人精品国产| 人人操人人干人人看| 黑人操白人| 少妇BBBBBB| 国产黄色片在线播放| AV无码在线播放| 爱搞搞就要搞| 9l视频自拍蝌蚪9l视频成人| 欧美日韩在线看| 操欧美逼| 黄色亚洲无码| 日本aaaa片| 人妻人人操人人爽| 天堂无线av无码av| 97超碰人人摸| 蜜臀av一区二区| 51乱伦| 国产伦精品一区二区三区色大师 | a在线免费| 免费中文字幕视频| 国内视频一区| 久久666| 五月色婷婷撸| 91亚洲国产精品| 婷婷色色婷婷| 俺来也操逼| 欧美三级欧美三级三级| 国内精品久久久久| 69天堂| 日本无码成人片在线播放| 亚洲欧洲免费| 好吊视频一区二区三区| 小黄片免费看| 有码一区二区三区| www.四虎成人网站| 成年视频在线观看| 欧美激情无码一区二区三区张丽 | 国产一区二区三区免费| 国产久视频| 黄色天堂| 午夜无码福利| 茄子av| 91毛片在线观看| 日韩精品无码一区二区| 国产午夜成人视频| 97精品在线观看| 黄网站免费观看| 国产精品人人人人| 羞羞视频com.入口| 日本韩国叼嘿片| 曰曰操| 成人久久视频| 国产久久免费视频| 久久视频一区| 欧美综合国产| 成人在线看片| 亚洲欧美日韩高清| 人人看人人摸人人操| 九色蝌蚪9l视频蝌蚪9l视频成人熟妇| 一区二区水蜜桃| 乱轮少妇| 亚洲AV人人夜夜澡人人| 亚洲AV无码电影|