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

最近很火的京東搶購飛天茅臺是怎么回事?從架構(gòu)原理來分析一波

開發(fā) 架構(gòu)
通常來說,大廠開發(fā)的系統(tǒng)經(jīng)常會遇到一些類似電商秒殺搶購、景點門票高并發(fā)搶購、特殊商品(比如口罩)高并發(fā)搶購、類似 12306 的高并發(fā)搶票類的系統(tǒng)。

背景

大家好,這篇文章給大家介紹一個非常經(jīng)典的去大廠面試經(jīng)常被問的一個問題,就是瞬時高并發(fā)搶購問題。

通常來說,大廠開發(fā)的系統(tǒng)經(jīng)常會遇到一些類似電商秒殺搶購、景點門票高并發(fā)搶購、特殊商品(比如口罩)高并發(fā)搶購、類似 12306 的高并發(fā)搶票類的系統(tǒng)。

所以經(jīng)常會問這一類高并發(fā)搶購類的問題,這個時候,小伙伴們?nèi)绻荒苡欣碛袚?jù)的給出一整套高并發(fā)場景下系統(tǒng)可能遇到的各種問題,以及你對應(yīng)的架構(gòu)設(shè)計和解決方案,那基本面試可能就會涼掉。

所以今天就手把手帶著大家來分析一下,假設(shè)在特殊物品庫存緊缺的場景下,1 分鐘內(nèi)要搶購 10w 個口罩這類特殊物品,此時可能有數(shù)十萬人這個量級瞬時涌入來進行搶購,這個時候系統(tǒng)可能會遇到哪些問題,我們應(yīng)該如何來設(shè)計架構(gòu)解決這類問題呢?

業(yè)務(wù)架構(gòu)設(shè)計

首先在分析這一類問題的時候,我們先不要考慮這個瞬時高并發(fā)到底有多高,先得把實現(xiàn)購買這類特殊商品的一個基礎(chǔ)業(yè)務(wù)架構(gòu)圖畫出來,同時把業(yè)務(wù)流程分析清楚。

大家看下圖,如果你要搞一個商品搶購的系統(tǒng),肯定得有一個搶購系統(tǒng),這個搶購系統(tǒng)你得依賴商品系統(tǒng)吧,畢竟搶購過程中需要對商品數(shù)據(jù)進行讀寫,你還得依賴庫存系統(tǒng)進行庫存扣減,同時你還得依賴價格系統(tǒng)來計算當(dāng)前商品的購買價格,還得依賴營銷系統(tǒng)來驗證商品購買的優(yōu)惠。

最后還得依賴鑒權(quán)認證、風(fēng)控攔截類的基礎(chǔ)系統(tǒng)來確定本次搶購是否可以執(zhí)行,所以說,一次搶購涉及到的各種系統(tǒng)其實是很多的,完整的基礎(chǔ)高并發(fā)搶購系統(tǒng)基礎(chǔ)業(yè)務(wù)架構(gòu)圖。

如下圖 1 所示:

網(wǎng)絡(luò)拓撲架構(gòu)設(shè)計

另外的話,大家還得對你的搶購請求是如何一步一步到達你的搶購系統(tǒng)的,這個事情流程大家也是要畫出來的。

一般來說,我們的 APP 移動端對后端訪問都是通過一個域名來發(fā)起請求的,這個域名會經(jīng)過 DNS 進行解析得到我們的 SLB 負載均衡系統(tǒng)的 ip 地址。

然后請求會發(fā)送到我們的 SLB 負載均衡系統(tǒng)上去,接著 SLB 負載均衡系統(tǒng)會把請求均勻分發(fā)給我們后端的 API 網(wǎng)關(guān)系統(tǒng),然后 API 網(wǎng)關(guān)系統(tǒng)再把流量分發(fā)給我們的搶購系統(tǒng)。

所以大致如下圖 2 所示:

好的,當(dāng)大家能當(dāng)著面試官的面,麻溜兒的把上面那套業(yè)務(wù)架構(gòu)圖和生產(chǎn)部署網(wǎng)絡(luò)拓撲圖大致畫出來以后,我們可以跟大家保證,雖然這個時候面試官看起來面無表情,但是心里的真實反映應(yīng)該是這樣的:小兄弟可以啊,一般人聽到這個問題就直接懵逼了,這小子居然知道先從業(yè)務(wù)架構(gòu)和網(wǎng)絡(luò)拓撲架構(gòu)入手進行分析。

但是大家別高興的太早,距離你圓滿的完成這個問題的分析,大致是才剛剛走完了西游記十萬八千里中的八千里而已,剩下的十萬還要繼續(xù)走呢!這一路上大家馬上要遇到各種妖魔鬼怪了!打起精神,接著一起來往下看。

秒殺業(yè)務(wù)流量洪峰

往往到這里,我們下一步應(yīng)該分析的,就是日常流量和搶購流量的區(qū)別了,什么意思呢?

先來說說日常流量,這個意思就是說,平時沒有搶購的時候,就是別人正常來買各種商品,系統(tǒng)的大致流量應(yīng)該是每秒會有多少請求。

這個問題的話,不大好說,因為不同的公司其實是不太一樣的,但是我們可以取一個較為中間的值,整個系統(tǒng)日常的話每秒也就 1000 次請求,這個是比較中肯的一個值,不高也不低。

如下圖 3 所示:

一般來說,但凡你的搶購系統(tǒng)以及他依賴的每個系統(tǒng)部署在 2 臺機器以上,每秒 1000 次請求這種常規(guī)流量,各個系統(tǒng)兄弟們同心協(xié)力,一起扛一抗,還是沒太大問題的。

但是如果說搞這么一個活動,某個特殊商品,限量 10w 份,大家又特別需要他,然后呢,限定就是每天上午 10:00 開搶,每次都有幾十萬人眼睛放出紅光盯著手機屏幕準(zhǔn)備搶他,志在必得,這個時候,流量會搞成什么樣子呢?

注意,重頭戲來了,大體上來說,根據(jù)一般的搶購經(jīng)驗,往往你的 10w 件商品會在 1 分鐘內(nèi)搶光,而且根據(jù)二八法則,80% 的商品會在 20% 的時間內(nèi)被搶光。

也就是說 8w 件商品可能會在 10s 內(nèi)被搶購,而且參與搶購這 8w 件商品的流量達到了 80% 的人群數(shù)量,假設(shè)一共有 50w 人參與搶購,就是有 40w 人在 10s 內(nèi)發(fā)起搶購請求,搶光了 8w 件商品。

這個時候,每秒的請求數(shù)量應(yīng)該是 40w/10s = 4w/s 的 QPS,大家看下圖 4:

不知道大家看到上圖是何感想?腦子別發(fā)蒙啊,面試官聽得津津有味,咱們趕緊繼續(xù)往下講啊,不然你這時候停下來,你們會大眼瞪小眼的!那這個時候如果對你的搶購系統(tǒng)發(fā)起的請求量達到了每秒 4w,大家覺得會如何呢?

很簡單,系統(tǒng)絕對會被打死,網(wǎng)絡(luò)帶寬打滿、CPU 使用率達到 90% 多、數(shù)據(jù)庫負載過高、下游依賴頻繁超時,這一切問題都可能會發(fā)生,你要問為什么?

那就是因為你的系統(tǒng)常規(guī)化部署下,就是抗每秒 1000 的請求的,他們又不是設(shè)計來抗你每秒 4w 請求的。

架構(gòu)設(shè)計優(yōu)化

所以這個時候問題就牽扯到了一個點,那就是怎么才能讓你的搶購系統(tǒng)可以抗下來每秒 4w 請求呢?

為了解決這個問題,就得趁著面試官打瞌睡的時候,咱兄弟偷偷給你傳授一點武林秘籍了。

正常情況下,一臺 4 核 8G 的機器,開 200 個線程處理請求,如果他要調(diào)用別的服務(wù),或者是訪問數(shù)據(jù)庫,基本上每秒單臺機器也就抗個 1000 的請求量。

并發(fā)搶購系統(tǒng)性能瓶頸分析

但是,注意,敲黑板劃重點了,不是說你的 4 核 8G 機器就菜雞到了只能抗每秒 1000 個請求,他的關(guān)鍵問題在于,他要調(diào)用別的服務(wù),而且他還要訪問數(shù)據(jù)庫,就是因為這種通過網(wǎng)絡(luò)去訪問外部系統(tǒng),才導(dǎo)致了他每秒抗的請求量比較菜雞一些。

大家看下圖 5:

大家要知道一點,類似 Redis、RocketMQ 這種中間件系統(tǒng),經(jīng)過深度優(yōu)化之后,往往單臺抗個上萬甚至幾萬 QPS 都沒問題,所謂的深度優(yōu)化是什么意思?

簡而言之就一點,你最好就是每次請求過來,完全就基于自己的內(nèi)存來讀寫數(shù)據(jù),然后就直接返回了。

不要隨便通過網(wǎng)絡(luò)去訪問外部的系統(tǒng),這種情況下,往往你的并發(fā)量可以提升幾個數(shù)量級。

如下圖 6 所示:

并發(fā)搶購系統(tǒng)架構(gòu)優(yōu)化

所以說,一般這種場景下,有三個非常強悍的優(yōu)化手段,那就是大幅度減少對外部服務(wù)的依賴調(diào)用嗎;寫數(shù)據(jù)盡量直接寫緩存,然后異步寫 DB;讀數(shù)據(jù)盡量優(yōu)先把數(shù)據(jù)緩存在系統(tǒng) JVM 內(nèi)存里,本地讀取返回。

這里可以給大家舉一些例子,比如說,對于特殊商品固定價格搶購,那么對價格系統(tǒng)、營銷系統(tǒng)的調(diào)用是否就可以省略了,畢竟價格固定,也沒有優(yōu)惠這一說。

對于風(fēng)控和鑒權(quán)類的通用操作,是否可以前置到 API 網(wǎng)關(guān)層面讓他去執(zhí)行,從我們的業(yè)務(wù)系統(tǒng)里移除這類通用邏輯?這不就一下子減少了對 4 個系統(tǒng)的調(diào)用了。

再比如說,對庫存的扣減,是否可以讓庫存系統(tǒng)把數(shù)據(jù)同步到 Redis 里,我們直接同步扣 Redis 里的庫存,然后發(fā) MQ 消息異步去庫存系統(tǒng)的 DB 里扣庫存?

還有比如對商品數(shù)據(jù)的大量查詢,是否可以將商品數(shù)據(jù)緩存到 Redis 里,同時對熱門商品數(shù)據(jù)全部提前加載到搶購系統(tǒng)的 JVM 內(nèi)存里本地緩存?

經(jīng)過優(yōu)化后的搶購系統(tǒng)大致看起來是下面圖 7 這樣子的:

大家看上圖,這個時候經(jīng)過一通優(yōu)化之后,我們的搶購系統(tǒng)已經(jīng)不再直接調(diào)用任何服務(wù)了。

他在讀商品數(shù)據(jù)的時候,優(yōu)先都是從自己的 JVM 本地緩存里讀取預(yù)緩存的數(shù)據(jù),幾乎就是純內(nèi)存操作,然后扣減庫存是去寫 Redis 的,對于庫存系統(tǒng)甚至是訂單系統(tǒng)的數(shù)據(jù)庫中的扣減庫存和下單,都是通過 MQ 異步化執(zhí)行的。

基本上系統(tǒng)優(yōu)化到這個水準(zhǔn),主要給搶購系統(tǒng)多部署幾臺機器,就可以抗下每秒幾萬高并發(fā)的請求了。

但是這個時候完了嗎?當(dāng)然沒有,這個時候系統(tǒng)里存在的問題還非常的多,我們得繼續(xù)往下分析,進一步一步一步的優(yōu)化。

①高并發(fā)搶購系統(tǒng)緩存擊穿問題分析與解決方案

首先,分析第一個問題,就是商品數(shù)據(jù)緩存在搶購系統(tǒng) JVM 本地緩存時的擊穿問題,我們在搶購系統(tǒng)的 JVM 本地緩存中放的數(shù)據(jù),一般都是要設(shè)置一個過期時間的,因為如果你一直緩存在 JVM 里,會導(dǎo)致商品數(shù)據(jù)有變化了,你也不知道。

所以假設(shè)我們設(shè)置一個 30min 的過期時間,每隔 30min 過期下,過期之后,搶購系統(tǒng)就得去 Redis 里查商品數(shù)據(jù)緩存,如果沒查到,那就得去調(diào)用商品系統(tǒng)的接口從數(shù)據(jù)庫里查了。

如下圖 8:

那么當(dāng)你的搶購系統(tǒng)里的本地緩存過期了,此時本地緩存沒數(shù)據(jù)了,然后 Redis 里緩存可能此時也沒有的時候,就在這個非常要緊的關(guān)頭,偏偏就進來了大量的請求,此時這大量請求在本地緩存都沒找到,去 Redis 里也沒找到,然后呢?

然后當(dāng)然就是完犢子了,因為這些請求都會涌入到商品系統(tǒng)里去,讓商品系統(tǒng)從數(shù)據(jù)庫里查詢,直接把商品系統(tǒng)擊穿。

如下圖 9:

所以這個時候,我們往往需要對這種本地緩存做一個特殊的方案設(shè)計,那就是對于本地緩存不要采取這種讓他自動過期然后請求過來的時候讀取不到再去商品系統(tǒng)那里查找的模式,而是采取搶購系統(tǒng)針對本地緩存自動定時刷新。

也就是說,搶購系統(tǒng)內(nèi)可以開一個后臺線程,然后讓他每隔 30min 自動去 Redis 里查最新緩存數(shù)據(jù),或者去商品系統(tǒng)查最新緩存數(shù)據(jù),然后刷新本地緩存,這樣就可以避免說自動過期后突然大量請求查不到緩存都涌入商品系統(tǒng)了。

如下圖 10:

②高并發(fā)搶購系統(tǒng)數(shù)據(jù)不一致問題分析與解決方案

再來看下一個比較常見的問題,就是扣庫存的緩存與 DB 不一致問題,這個問題的場景可能發(fā)生在如下情況。

就是說你在 Redis 里扣完了庫存之后,通過 MQ 發(fā)送了一個消息異步讓那個庫存系統(tǒng)在 DB 里扣庫存,可是人家?guī)齑嫦到y(tǒng)還沒在 DB 里扣減呢,這個時候你突然因為異常回滾了這次庫存扣減,此時 Redis 里把扣的庫存恢復(fù)了,然后發(fā)了一個消息到 MQ 去恢復(fù)庫存扣減。

如下圖 11:

但是這個時候 Redis 里的庫存是恢復(fù)了,可是庫存系統(tǒng) DB 那里就是未必了,因為庫存系統(tǒng)從 MQ 里獲取消息的時候,很有可能是亂序獲取的,就是先獲取到恢復(fù)庫存的消息。

此時庫存系統(tǒng)一般會判斷一下,之前是否對這次搶購有過庫存扣減日志,如果沒有,他就不會去恢復(fù)庫存,然后接著再獲取到扣減庫存的消息,此時他就扣減了庫存,可是恢復(fù)庫存的消息再也沒機會處理了。

如下圖 12:

那么上面會導(dǎo)致什么呢?會導(dǎo)致 Redis 里扣減了庫存,又恢復(fù)了庫存,可是庫存系統(tǒng)的 DB 里先獲取了恢復(fù)庫存指令,結(jié)果什么都沒干,然后又獲取了扣減庫存指令,反而把庫存給扣了,此時緩存和 DB 里的庫存是不一致的。

所以針對這個問題,通常都會實現(xiàn) MQ 順序消息,也就是說,把同一個搶購訂單的多個庫存操作指令發(fā)送到 MQ 的一個分區(qū)里去,讓他們實現(xiàn)有序,強制要求庫存系統(tǒng)必須按照順序依次獲取后執(zhí)行,這樣就會先執(zhí)行扣減庫存指令,再執(zhí)行恢復(fù)庫存指令了。

如下圖 13:

總結(jié)

好了,今天這篇文章到這里為止,就給大家講了一下大廠里我們經(jīng)常遇到的高并發(fā)搶購類系統(tǒng)的架構(gòu)設(shè)計和優(yōu)化過程,以及緩存擊穿與數(shù)據(jù)亂序不一致問題的分析和解決方案。

責(zé)任編輯:武曉燕 來源: 今日頭條
相關(guān)推薦

2024-04-30 11:21:04

瀏覽器指紋瀏覽器

2023-03-29 08:24:30

2025-04-29 00:00:00

超節(jié)點SuperPod大模型

2024-01-22 09:02:00

AI訓(xùn)練

2021-06-04 11:10:04

JavaScript開發(fā)代碼

2025-06-03 10:05:00

DNS 污染DNSIP 地址

2020-02-18 11:19:36

物聯(lián)網(wǎng)病毒物聯(lián)網(wǎng)IOT

2019-02-17 10:05:24

TCPSocket網(wǎng)絡(luò)編程

2021-01-01 09:03:44

故障HAProxy服務(wù)器

2024-01-08 08:35:28

閉包陷阱ReactHooks

2025-04-29 08:56:36

2013-04-18 09:56:05

2021-05-11 11:51:15

飛機Wi-Fi通信

2023-03-05 15:41:58

MySQL日志暴漲

2016-11-22 19:54:56

點擊率預(yù)估推薦算法廣告

2023-10-12 08:54:20

Spring事務(wù)設(shè)置

2021-07-22 09:40:10

GitHub代碼開發(fā)者

2015-12-15 13:43:24

volte

2024-07-04 13:29:06

2022-04-15 08:54:39

PythonAsync代碼
點贊
收藏

51CTO技術(shù)棧公眾號

heyzo高清在线| 日本一本中文字幕| 国产日韩在线免费观看| 人妖一区二区三区| 亚洲国产精品自拍| 欧美一卡2卡3卡4卡无卡免费观看水多多| 日韩在线视频网址| 国产精品对白久久久久粗| 亚洲1区2区3区4区| 日韩视频精品| 欧性猛交ⅹxxx乱大交| 国产欧美日韩综合一区在线播放| 中国china体内裑精亚洲片| 四虎成人在线播放| 天天综合网天天| 亚洲综合色自拍一区| 欧美一区二区在线视频观看| 精品亚洲永久免费| 久久看人人摘| 亚洲精品视频二区| 日韩精品在线播放视频| 欧洲av一区二区| 亚洲成人动漫av| 中文字幕中文字幕在线中一区高清 | 日韩av片在线播放| 99久久.com| 亚洲国产精品99久久| 国产三级精品三级在线| 成人一级片网站| 2017亚洲天堂| 亚洲精华一区二区三区| 精品人在线二区三区| 久久精品免费网站| 国产激情在线播放| 中文字幕一区二区三区不卡在线| 久久久99爱| av网站免费播放| 久久国产尿小便嘘嘘| 久久精品国产一区二区电影| 中文字幕 自拍| 亚洲精品一区国产| 欧美一区二区三区婷婷月色| 97在线免费公开视频| 久草在线资源福利站| 亚洲午夜视频在线| 亚洲精品国产精品久久| 77导航福利在线| 国产午夜精品一区二区三区四区 | 久久影院资源站| 欧美日韩日日摸| 一路向西2在线观看| av资源新版天堂在线| 亚洲成人精品一区二区| 欧美一级免费播放| 麻豆免费版在线观看| 婷婷综合另类小说色区| 777久久久精品一区二区三区| 日本在线影院| 日本韩国一区二区| 国产自偷自偷免费一区| 日本蜜桃在线观看视频| 婷婷成人激情在线网| 久久久亚洲精品无码| 91精品久久| 国产精品久久久一区麻豆最新章节| 欧美一区二区三区四区五区六区| 黄色av免费在线看| 国产精品jk白丝蜜臀av小说| 午夜日韩电影| 欧美剧在线观看| 青青操国产视频| 91亚洲国产高清| www.欧美免费| 亚洲精品一区二区三区在线播放| 日本不卡电影| 久久综合五月天| 在线观看天堂av| 亚洲影视一区二区三区| 久久久久久久久电影| 国产成人无码精品久久久久| 性一交一乱一区二区洋洋av| 青青青国产精品一区二区| 久久精品久久精品久久| 狠狠综合久久| 2019亚洲日韩新视频| 中国一区二区视频| 国产精品自拍毛片| 国产精品视频福利| 国产精品ⅴa有声小说| 中文字幕一区二区三区在线不卡| 无码熟妇人妻av在线电影| gogo久久| 欧美日韩三级一区二区| 老司机av网站| 日本免费一区二区视频| 欧美成人bangbros| 国产毛片久久久久久久| 亚洲精品91| 日本免费在线精品| 一级做a爱片久久毛片| 99久久精品国产一区| 欧美精品欧美精品| 污污的视频在线观看| 色婷婷香蕉在线一区二区| 污污视频网站在线| 少妇精品导航| 亚洲视频在线视频| 九九热只有精品| 免费成人在线观看| 国产欧美精品一区二区三区-老狼| 亚洲av无码一区二区三区dv| 国产一区二区三区四区五区美女| 99爱精品视频| 三级在线视频| 亚洲综合偷拍欧美一区色| 九色porny自拍| 精品在线91| 欧美成人精品在线观看| 无码人妻久久一区二区三区 | 日本道在线观看一区二区| 欧美一级大片免费看| 四虎8848精品成人免费网站| 国产69久久精品成人| 欧美视频xxxx| 91麻豆蜜桃一区二区三区| 日本一级黄视频| 中文成人在线| 中文国产成人精品| 国产亚洲欧美在线精品| 99久久精品费精品国产一区二区 | 99精品国产福利在线观看免费 | 啪啪国产精品| 欧美激情久久久| 99在线观看免费| 国产精品乱码人人做人人爱| 男女啪啪免费视频网站| 国产精品一区二区三区四区在线观看| 亚洲国产小视频| 日本少妇xxxx动漫| 成人动漫视频在线| 青春草在线视频免费观看| 亚洲女同志freevdieo| 亚洲国产精品久久久久| 日本三级网站在线观看| 成人精品国产福利| 欧美中文字幕在线观看视频 | 精品熟妇无码av免费久久| 国产精品综合色区在线观看| 国产欧美一区二区三区不卡高清| 七七成人影院| 精品卡一卡二卡三卡四在线| 久久99久久久| 不卡电影免费在线播放一区| 欧美久久久久久久久久久久久 | 精品国产3级a| 伊人久久久久久久久久久久久久| 精品亚洲欧美一区| 亚洲免费av网| 日韩中文在线| 国外成人性视频| 精品人妻少妇AV无码专区| 亚洲三级电影网站| 伊人av在线播放| 亚洲国产美女| 欧美 日韩 国产在线| 91av亚洲| 少妇激情综合网| 97久久人国产精品婷婷 | 久久99精品波多结衣一区| 波多野结衣一区二区三区| 91九色丨porny丨国产jk| 精品亚洲a∨一区二区三区18| 欧美另类高清videos| 欧美 日韩 国产 成人 在线| 欧美日韩综合视频| 手机免费观看av| 经典一区二区三区| 亚洲国产精品无码观看久久| 视频一区中文字幕精品| 91成人在线观看国产| 91欧美在线视频| 日韩精品在线一区| 久久久久久久久久久久久久免费看| 9i在线看片成人免费| 久久久久狠狠高潮亚洲精品| 香蕉视频一区| 热久久这里只有精品| 麻豆视频在线观看免费| 亚洲黄色在线看| 中文字幕一区二区三区四区视频| 一区二区理论电影在线观看| 美女100%无挡| 国产精品亚洲成人| 欧美精品无码一区二区三区| 亚洲欧美在线专区| 欧美日韩一区二区视频在线| 亚洲日韩中文字幕一区| 91干在线观看| 黄色av免费在线| 日韩成人在线观看| 亚洲中文一区二区三区| 亚洲成人免费看| 多男操一女视频| 国产福利一区二区三区视频在线| 日本三级免费网站| 婷婷久久国产对白刺激五月99| 国产精品视频福利| 国产精品免费精品自在线观看| 欧洲亚洲女同hd| 污污片在线免费视频| 日韩专区在线播放| 婷婷婷国产在线视频| 日韩欧美国产午夜精品| 亚洲一级特黄毛片| 色八戒一区二区三区| 国产精品 欧美 日韩| 亚洲欧美日韩国产综合在线| 人人爽人人爽av| 免费在线成人网| 成年人视频网站免费观看| 午夜日韩电影| 国产在线拍揄自揄拍无码| jiujiure精品视频播放| 九九九九九九精品| 成人资源在线| 99久久精品免费看国产四区 | 欧洲一区二区三区| 色噜噜久久综合伊人一本| 女人天堂在线| 日韩精品福利在线| 欧美一级免费片| 欧美色精品天天在线观看视频| 美日韩一二三区| 亚洲成人7777| 国产午夜精品无码| 亚洲欧美另类小说视频| 日本免费网站视频| 亚洲国产精品二十页| 国产精品偷伦视频免费观看了| 国产一区二区三区四| 91网址在线观看精品| 久久99深爱久久99精品| 国产一级做a爰片久久毛片男| 欧美1区2区视频| 日本黄色片一级片| 国产精品vip| 乱熟女高潮一区二区在线| 亚洲国产一区二区在线观看| 四虎4hu永久免费入口| 中文无码久久精品| 老司机午夜免费福利视频| 亚洲第一偷拍| 蜜臀av性久久久久蜜臀av| 久久精品高清| 欧美 国产 精品| 午夜电影亚洲| 五月天激情图片| 伊人久久婷婷| 国产素人在线观看| 久久一区中文字幕| 拔插拔插海外华人免费| 亚洲欧美春色| 午夜免费福利在线| 久久国产精品72免费观看| 一区二区久久精品| 国产宾馆实践打屁股91| 内射中出日韩无国产剧情| 久久久久久久综合日本| 日本午夜精品视频| 国产精品色噜噜| 国产免费一区二区三区四区| 亚洲黄色免费网站| 黑人一级大毛片| 欧美日韩一级视频| 成人激情四射网| 亚洲男人7777| 美女av在线播放| 亚州成人av在线| 日韩欧美一区二区三区免费观看 | 亚洲av毛片在线观看| 丁香婷婷综合激情五月色| 亚洲免费999| 久久er精品视频| 免费看毛片的网站| 国产日韩欧美综合在线| 日韩a级片在线观看| 亚洲成av人片在线观看| 日韩综合在线观看| 色先锋aa成人| 国产高清免费av| 日韩极品精品视频免费观看| 天堂资源最新在线| 精品国产一区二区三区久久狼黑人 | 国产欧美日韩一区二区三区在线观看 | 男女啪啪网站视频| 国产精品综合二区| 精品国产成人亚洲午夜福利| 一区二区三区四区国产精品| 久久精品视频2| 欧美一区二区三区免费观看视频| 日韩一级中文字幕| 日韩一区二区欧美| 超碰公开在线| 国产精品视频自在线| 成人av影音| 伊人久久av导航| 性欧美xxxx大乳国产app| 韩国一区二区三区四区| 国产精品视频一区二区三区不卡| 国产一级特黄毛片| 欧美福利一区二区| 久久久久久青草| 亚州成人av在线| www.国产精品一区| 精品国产三级a∨在线| 久久久久久穴| 在线免费观看a级片| 伊人色综合久久天天人手人婷| 最新中文字幕在线观看视频| 日韩www在线| 男人天堂亚洲天堂| 国产精品久久久久久久久久久新郎 | 亚洲激情视频一区| 日韩精品一区二区三区视频| 成人性爱视频在线观看| 91禁国产网站| 精品精品国产三级a∨在线| 男女裸体影院高潮| 韩国v欧美v日本v亚洲v| 成年人视频软件| 欧美色图天堂网| 成人亚洲综合天堂| 国产精品678| 日韩理论电影中文字幕| www.激情网| 国产91综合网| 69夜色精品国产69乱| 色香色香欲天天天影视综合网| 天堂视频中文在线| 国产做受69高潮| 久久婷婷国产| 中文字幕一区二区三区在线乱码| 久久99精品国产麻豆不卡| 国产精品久久国产精麻豆96堂| 一本大道av一区二区在线播放| a天堂视频在线| 欧美日韩成人在线观看| 精品无人乱码一区二区三区 | a视频网址在线观看| 国产精品一二区| 全球av集中精品导航福利| 日本免费黄色小视频| 国产a区久久久| 欧美日韩精品在线观看视频| 精品美女被调教视频大全网站| 超碰97免费在线| 久久久久久久久久码影片| 日韩一级精品| 国产在线观看无码免费视频| 欧美午夜无遮挡| av中文在线| 成人a在线视频| 久久精品青草| 97精品人人妻人人| 精品久久久久久中文字幕大豆网 | 久久视频在线看| 日韩一区网站| 成人性免费视频| 久久久不卡影院| 国产精品久久影视| 欧美激情一区二区三区在线视频观看| 久久人体av| 亚洲精品一区二区毛豆| 久久激五月天综合精品| 麻豆亚洲av熟女国产一区二| 日韩三级av在线播放| 国产深夜视频在线观看| 久久99导航| 精一区二区三区| 黄色小视频在线免费看| 亚洲图片欧美午夜| 韩国一区二区三区视频| 激情成人开心网| 久久久久久久电影| 91片黄在线观看喷潮| 亚州欧美日韩中文视频| 欧美午夜精品一区二区三区电影| 亚洲精品永久视频| 精品福利在线看| 日本www在线观看视频| 国产伦理久久久| 久久国产精品第一页| 国产成人无码精品亚洲| 91精品国产91久久久久久最新毛片 | 夜夜嗨av色综合久久久综合网| 精品久久国产一区| 久草热视频在线观看| 亚洲人成亚洲人成在线观看图片| 四虎精品成人影院观看地址| 国产日韩综合一区二区性色av|