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

一個 Redis 的雪崩和穿透問題,小學妹畫了個圖,結果入職了

存儲 存儲軟件 Redis
字符串 "Java" 在經過四個映射函數操作后在位圖上有四個點被設置成了 1。當我們需要判斷 “ziyou” 字符串是否存在的時候只要在一次對字符串進行映射函數的操作,得到四個 1 就說明 “Java” 是可能存在的。

[[409025]]

本文轉載自微信公眾號「Java極客技術」,作者鴨血粉絲。轉載本文請聯系Java極客技術公眾號。

阿粉的一個小學妹最近剛從某個小互聯網公司跳槽,然后最近面試的挺多的,一個不善言語的小姑娘,技術還是 OK 的,本來之前是做 UI 的,但是時間長了,感覺沒太大意思,所以就開始學了后端,然后從原有公司慢慢的轉為了后端開發人,也就是我們所說的 “程序猿”,最近面試給阿粉談了談她的面試經驗。阿粉比較印象深刻的一句話就是,我給你畫個圖,你看一下,這是對面試官說的,事情是什么樣子的呢?

你了解 Redis 穿透和雪崩么?

為什么這么說,因為面試官當你說到 Redis 的時候,面試官問的現在已經不是 "你說一下 Redis 的幾種數據結構" ,現在面試問的時候,很多都是對 Redis 的實際使用開始問了,比如說,

  • Redis 都有哪些架構模式?單機版,主從復制,哨兵機制,集群(proxy 型),集群(直連型)
  • 使用過 Redis 分布式鎖么,它是怎么實現的?
  • 使用過 Redis 做異步隊列么,你是怎么用的?有什么缺點?
  • 什么是緩存穿透?如何避免?什么是緩存雪崩?何如避免?

而阿粉的小學妹遇到的就是關于 Redis 的緩存穿透和雪崩問題了。這個問題學妹配合了一波自己的 UI 功底圖加上口頭的解釋,于是成功的拿到了這個 Offer,也可能是因為小學妹比較美麗并且技術還過的去。所以,就準備入職了。

我們來看看小學妹到底畫了什么圖,讓面試官問了一波之后就入職了。

緩存穿透

如圖:圖是阿粉找小學妹專門畫出來的,大家看一下

既然我們看完圖了,相信大家也都看到了什么是緩存穿透了,也就是說,在我們的緩存系統中,也就是 Redis 中,我們都是拿著我們的 Key 去 Redis 中去尋找 Value 中,如果說我們在 Redis 中找不到我們的數據之后,我們就會去數據庫中去尋找我們的數據,如果只是單一請求的話,也不能算是個太大的問題,只能稱之為擊穿而已,但是如果說要是請求并發量很大的話,就會對我們的數據庫造成很大的壓力,這其實就稱之為緩存穿透,而穿透出現的嚴重后果,就會是緩存的雪崩了,我們先說穿透,一會再說雪崩。

那么都會有什么情況會造成緩存被穿透呢?

  • 自身代碼問題
  • 一些惡意攻擊、爬蟲造成大量空的命中。

如果有個黑客對你們公司的項目和數據庫比較感興趣,他就可能會給你整出巨多的一些不存在的ID,然后就瘋狂的去調用你們的某項接口,這些本身不存在的 ID 去查詢緩存的數據的時候,那就是壓根沒有的,這時候就會有大量的請求去訪問數據庫,雖然可能數據能支撐一段時間,但是早晚會讓人家給你整的涼了。

那么應該怎么去解決緩存穿透的問題呢?

  • 利用互斥鎖,緩存失效的時候,先去獲得鎖,得到鎖了,再去請求數據庫。沒得到鎖,則休眠一段時間重試。
  • 采用異步更新策略,無論 Key 是否取到值,都直接返回。Value 值中維護一個緩存失效時間,緩存如果過期,異步起一個線程去讀數據庫,更新緩存。需要做緩存預熱(項目啟動前,先加載緩存)操作。
  • 提供一個能迅速判斷請求是否有效的攔截機制,比如,利用布隆過濾器,內部維護一系列合法有效的 Key。迅速判斷出,請求所攜帶的 Key 是否合法有效。如果不合法,則直接返回。
  • 布隆過濾器實際上是一種比較推薦的方式。

布隆過濾器的實現原理則是這樣的:

當一個變量被加入集合時,通過 K 個映射函數將這個變量映射成位圖中的 K 個點,把它們置為 1。查詢某個變量的時候我們只要看看這些點是不是都是 1 就可以大概率知道集合中有沒有它了,如果這些點有任何一個 0,則被查詢變量一定不在;如果都是 1,則被查詢變量很可能在。注意,這里是可能存在,不一定一定存在!這就是布隆過濾器的基本思想。

而當你說出布隆過濾器的時候,可能這才是面試官想要問你的內容,這時候你就得好好的和面試官開始聊聊什么事布隆過濾器了。

我們還是繼續用大眾都想看到的圖解來解釋布隆過濾器。

字符串 "Java" 在經過四個映射函數操作后在位圖上有四個點被設置成了 1。當我們需要判斷 “ziyou” 字符串是否存在的時候只要在一次對字符串進行映射函數的操作,得到四個 1 就說明 “Java” 是可能存在的。

注意語言,是可能存在,而不是一定存在,

那是因為映射函數本身就是散列函數,散列函數是會有碰撞的,意思也就是說會存在一個字符串可能是 “Java1” 經過相同的四個映射函數運算得到的四個點跟 “Java” 可能是一樣的,這種情況下我們就說出現了誤算。

另外還有可能這四個點位上的 1 是四個不同的變量經過運算后得到的,這也不能證明字符串 “Java” 是一定存在的。

而我們使用布隆過濾器其實就是提供一個能迅速判斷請求是否有效的攔截機制,判斷出請求所攜帶的 Key 是否合法有效。如果不合法,則直接返回。

而阿粉的小學妹給面試官解釋了一波這操作之后,看樣子,面試官對這個“程序猿”開始有點印象了,接下來就順著問了,那什么事緩存的雪崩呢?

緩存雪崩

這時候也就是說,當我們有多個請求訪問緩存的時候,這時候,緩存中的數據是沒有的,也就是說緩存同一時間大面積的失效,這個時候又來了一波請求,結果請求都懟到數據庫上,從而導致數據庫連接異常

他和穿透實際上相似但是又有所不同,相似的地方是都是搞數據庫,不同的是緩存穿透是指并發查同一條數據,緩存雪崩是不同數據都過期了,很多數據都查不到從而查數據庫

而解決緩存雪崩的策略也是比較多的,而且都是比較實用的。比如:

  • 給緩存的失效時間,加上一個隨機值,避免集體失效。
  • 雙緩存。我們有兩個緩存,緩存 A 和緩存 B。緩存 A 的失效時間為 20 分鐘,緩存 B 不設失效時間

雙緩存策略比較有意思,當請求來臨的時候,我們先從 A 緩存中獲取,如果 A 緩存有數據,那么直接給他返回,如果 A 中沒有數據,那么就直接從 B 中獲取數據,直接返回,與此同時,我們啟動一個更新的線程,更新 A 緩存和 B 緩存,這就是雙緩存的策略。

上述的處理緩存雪崩的情況實際上都是從代碼上來進行實現,而我們換個思路考慮呢,也就是從架構的方向去考慮的話,解決方案就是以下的幾種了。

  • 限流
  • 降級
  • 熔斷

那么怎么實現限流呢?

說到限流降級了,那就不能單純的去針對 Redis 出現的問題而進行處理了,而實際上是為了保證用戶保護服務的穩定性來進行的。

那么為什么要去限流呢?你要單純的說是為了保證系統的穩定性,那面試官估計得崩潰,這和沒說有啥區別,你得舉個簡單的例子才能正兒八經的忽悠住面試官,比如:

假設,我們當前的程序能夠處理10個請求,結果第二天,忽然有200多請求一起過來,整整翻了20倍,這時候,程序就涼了,但是如果第一天晚上的時候,領導給你說,明天你寫的那個程序大約會有200多個請求要處理,你這時候是不是得想辦法,比如說,能不能再寫出另外的一段程序來進行分擔請求,這時候其實就相當于需要我們去限流了。

限流算法之漏桶算法

同樣的,我們整個圖來理解一下這個算法到底是怎么實現的。

如果一桶有一個細眼,我們往里面裝水,可以看到水是一滴一滴勻速的下落的,如果桶滿了就拒絕水滴繼續滴入,沒滿的話就繼續裝水,實際上就是這樣的水滴實際上就相當于是請求,如果水桶沒滿的時候,還能繼續處理我們進來的請求,當水桶滿了的時候,就拒絕處理,讓他溢出。

前提是我們的這個桶是個固定的容器,不能隨著水的增多桶會變大,要不然那還用什么限流算法。

簡單的漏桶算法的實現:

  1. public class LeakyBucket { 
  2.         public long timeStamp = System.currentTimeMillis();  // 當前時間 
  3.         public long capacity; // 桶的容量 
  4.         public long rate; // 水漏出的速度 
  5.         public long water; // 當前水量(當前累積請求數) 
  6.  
  7.         public boolean grant() { 
  8.             long now = System.currentTimeMillis(); 
  9.             // 先執行漏水,計算剩余水量 
  10.             water = Math.max(0, water - (now - timeStamp) * rate);  
  11.              
  12.             timeStamp = now; 
  13.             if ((water + 1) < capacity) { 
  14.                 // 嘗試加水,并且水還未滿 
  15.                 water += 1; 
  16.                 return true
  17.             } else { 
  18.                 // 水滿,拒絕加水 
  19.                 return false
  20.         } 
  21.     } 

上面的代碼是來自悟空,不得不說,這個簡單的例子雖然簡單,但是把這個漏桶算法的簡單原理描述的還是差不多的,而在這里最需要注意的,就是桶的容量,還有就是水桶漏洞的出水的速度。

既然我們了解了漏桶算法是如何實現限流的,那么必然也會有他處理不來的情況,因為我們已經定義了水漏出的速度,而這時候如果應對突發的流量忽然涌進來,他處理起來效率就不夠高了,因為水桶滿了之后,請求都拒絕了,都不處理了。

其實我們所說的漏桶算法還可以看作是一個帶有常量服務時間的單服務器隊列,如果漏桶(包緩存)溢出,那么數據包會被丟棄。

而我們的漏桶算法主要是能夠強行限制數據的傳輸速率。

那么又有什么算法能夠不進行強制限制傳輸速率,并且實現限流呢?

令牌桶算法

我們感謝百度,我從百度圖片中找了個一個比較給力的圖來描述令牌桶的算法。

令牌桶算法的基本過程是這個樣子的:

  1. 用戶配置的平均發送速率為r,則每隔1/r秒一個令牌被加入到桶中
  2. 假設桶最多可以存發b個令牌。如果令牌到達時令牌桶已經滿了,那么這個令牌會被丟棄
  3. 當一個n個字節的數據包到達時,就從令牌桶中刪除n個令牌,并且數據包被發送到網絡
  4. 如果令牌桶中少于n個令牌,那么不會刪除令牌,并且認為這個數據包在流量限制之外

乍一看,怎么感覺這個令牌桶和漏桶這么像,一個是水滴,一個是令牌,實際上不是。

令牌桶這種控制機制基于令牌桶中是否存在令牌來指示什么時候可以發送流量。令牌桶中的每一個令牌都代表一個字節。如果令牌桶中存在令牌,則允許發送流量;而如果令牌桶中不存在令牌,則不允許發送流量。

而且他是能夠應對突發限制的,雖然傳輸的速率受到了限制.所以它適合于具有突發特性的流量的一種算法。

而在 Google 開源工具包中的限流工具類RateLimiter ,這個類就是根據令牌桶算法來完成限流。大家有興趣的可以去看看呀。

漏桶算法和令牌桶算法的區別

漏桶算法與令牌桶算法實際上看起來有點相似,但是不能混淆哈,這就是阿粉在上面說的:

漏桶算法能夠強行限制數據的傳輸速率。

 

令牌桶算法能夠在限制數據的平均傳輸速率的同時還允許某種程度的突發傳輸

 

責任編輯:武曉燕 來源: Java極客技術
相關推薦

2020-03-16 14:57:24

Redis面試雪崩

2021-03-09 17:09:42

拷貝算法對象

2019-10-12 14:19:05

Redis數據庫緩存

2023-03-10 13:33:00

緩存穿透緩存擊穿緩存雪崩

2025-02-13 07:49:18

2023-04-14 07:34:19

2025-04-29 10:28:25

2019-03-27 13:56:39

緩存雪崩穿透

2025-10-20 07:49:26

穿透雪崩Redis

2021-07-19 08:41:49

藍屏用戶Bug

2019-02-13 11:04:42

系統緩存軟件

2024-01-19 20:42:08

Redis數據庫Key

2024-04-07 00:00:02

Redis雪崩緩存

2021-06-05 09:01:01

Redis緩存雪崩緩存穿透

2024-04-18 11:43:28

緩存數據庫Redis

2023-02-21 17:06:49

硬件軟件系統

2022-05-31 08:35:05

RocketMQACK客戶端

2021-12-09 11:31:16

跨域后端開發

2020-04-03 09:45:09

Java多線程接口

2020-01-03 10:46:16

Windows 功能系統
點贊
收藏

51CTO技術棧公眾號

韩国av一区二区| 欧美军人男男激情gay| 亚洲成a人片在线观看中文| 精品国产一区二区三| 亚洲高清视频免费观看| 亚洲精品99| 日韩精品免费电影| 亚洲一级片av| 中文日产幕无线码一区二区| 综合分类小说区另类春色亚洲小说欧美 | 日韩欧美亚洲国产一区| 亚州欧美一区三区三区在线 | 日本特黄特色aaa大片免费| 嫩草影视亚洲| 精品国产伦理网| 日本三级黄色网址| 日产福利视频在线观看| 亚洲视频一区二区在线| 欧美一区二区三区精美影视| 成人av无码一区二区三区| 日韩电影免费在线看| 国模极品一区二区三区| 午夜爱爱毛片xxxx视频免费看| 奇米777国产一区国产二区| 91麻豆精品91久久久久久清纯| 波多野结衣家庭教师在线播放| 二区三区四区高清视频在线观看| 久久免费精品国产久精品久久久久| 99九九视频| 国产一区二区在线播放视频| 麻豆精品91| 38少妇精品导航| 久久这里只有精品免费| 久久久久久久久久久妇女| 日韩电影网在线| 涩视频在线观看| 久久伦理中文字幕| 欧美日韩激情在线| 激情视频免费网站| 欧美电影免费观看| 粉嫩老牛aⅴ一区二区三区| 日本人妻伦在线中文字幕| 黄色网页在线观看| 国产精品国产自产拍高清av| 日韩精品在在线一区二区中文| 亚洲欧美综合一区二区| heyzo一本久久综合| 99久久99| 日韩在线观看视频一区| 成人一区二区三区在线观看 | 狼人精品一区二区三区在线| 日韩欧美成人一区二区| 激情小说欧美色图| 日韩在线亚洲| 日韩美女一区二区三区| 亚洲911精品成人18网站| 九九99久久精品在免费线bt| 91精品婷婷国产综合久久性色 | 日韩av大片在线观看| 亚洲国内欧美| 91高清免费在线观看| 人人干人人干人人干| 亚洲精品视频啊美女在线直播| 欧美精品18videosex性欧美| 国产一级视频在线观看| 激情久久婷婷| 欧美在线激情视频| 男人天堂av在线播放| 日韩电影在线免费| 成人a在线观看| 国内精品国产成人国产三级| 福利一区在线观看| 久久伊人一区| 日本精品一区二区三区在线播放| 日韩毛片高清在线播放| 免费观看中文字幕| 多野结衣av一区| 欧美最猛黑人xxxxx猛交| 岛国av免费在线| 亚洲国产欧美在线观看| 亚洲精品成a人在线观看| 黑人巨大精品欧美| 国产精品99一区二区三| 韩国三级日本三级少妇99| 91丝袜一区二区三区| 另类综合日韩欧美亚洲| 成人午夜电影在线播放| 六十路在线观看| 亚洲欧美另类综合偷拍| 久色视频在线播放| 99久久er| 亚洲福利在线视频| 久久久精品成人| 欧美日韩一视频区二区| 国产suv精品一区二区| 国产女人高潮毛片| 2020国产精品| 亚洲色婷婷久久精品av蜜桃| 狼人综合视频| 91麻豆精品国产综合久久久久久 | 国产日韩综合av| 国产女主播av| 国产另类xxxxhd高清| 日韩欧美卡一卡二| 蜜桃av免费在线观看| 亚洲国产三级| 亚洲在线视频观看| 国产天堂在线| 国产国产一区| 91在线观看污| 一级黄色片播放| 欧美三区四区| 亚洲精品国产成人| 疯狂撞击丝袜人妻| 久久精品30| 国产日韩二区| 97影院秋霞午夜在线观看| 色婷婷综合久久久中文一区二区| 日本女人性视频| 欧美国产一级| 国产成人亚洲综合91精品| 亚洲成熟女性毛茸茸| 国产精品天干天干在线综合| 欧美日韩一道本| 日韩欧美久久| 久久五月情影视| 亚洲无码久久久久久久| 久久久久久久国产精品影院| 日韩五码在线观看| 一区中文字幕电影| 欧美成人免费va影院高清| 中文字幕在线观看精品| 国产调教视频一区| 国产精品69页| 国产一区二区三区探花 | 国产精品高清乱码在线观看| 亚洲高清在线观看| 国产一级大片在线观看| 国产精品综合网| 色一情一乱一乱一区91| 国产日韩一区二区三免费高清 | 日本在线观看高清完整版| 欧美三级蜜桃2在线观看| 黄色在线观看av| 国产视频欧美| 欧美日韩电影一区二区三区| 天堂资源在线| 亚洲精品中文字| 日本一区二区三区精品| 久久久国际精品| 99精品视频播放| 国产精品一在线观看| 日本欧美一级片| 国产天堂素人系列在线视频| 欧美在线你懂的| 亚洲AV成人无码网站天堂久久| 麻豆国产欧美日韩综合精品二区| 日韩亚洲视频在线| 精品久久久网| 久久伊人91精品综合网站| 国产超碰人人模人人爽人人添| 亚洲精品国产一区二区精华液| 日本少妇一级片| 亚洲精选在线| 欧美主播一区二区三区美女 久久精品人| 综合在线影院| www.99久久热国产日韩欧美.com| 99在线小视频| 亚洲第一激情av| 99久久人妻无码中文字幕系列| 久久亚洲美女| 在线不卡日本| 粉嫩久久久久久久极品| 欧洲美女7788成人免费视频| 成人高清免费观看mv| 日韩一区二区精品在线观看| 日本一级淫片免费放| 久久久激情视频| 99中文字幕在线| 亚洲麻豆av| 婷婷四月色综合| 911亚洲精品| 国产精品黄页免费高清在线观看| 黄视频网站在线| 亚洲精品电影网| 亚洲无码精品国产| 亚洲成人激情自拍| 99久久99久久精品免费| 成人综合在线视频| 91搞黄在线观看| 少妇人妻大乳在线视频| 美日韩中文字幕| 亚洲va欧美va在线观看| 美女高潮视频在线看| 中文字幕一区电影| 国精产品一品二品国精品69xx| 色屁屁一区二区| 欧美日韩偷拍视频| 亚洲国产精品t66y| 日韩综合第一页| 久久99日本精品| 男人操女人免费软件| 亚洲乱码免费伦视频| 欧美aaaaa喷水| 伊人精品久久| 成人网在线视频| 激情影院在线观看| 国产亚洲精品成人av久久ww| 免费观看的毛片| 91精品国产麻豆| 欧美 亚洲 另类 激情 另类| 亚洲国产精品一区二区尤物区| 免费91在线观看| 久久久久久久电影| 超碰97在线资源站| 高清不卡一二三区| 在线一区二区不卡| 看片的网站亚洲| youjizzxxxx18| 免费在线成人| 国产原创popny丨九色| 欧美精品激情| 麻豆md0077饥渴少妇| 精品国产精品| 欧美精品七区| 日韩高清成人在线| 国产在线一区二区三区四区 | 久久国产欧美| 欧美视频在线观看网站| 欧美涩涩网站| 五月天在线免费视频| 99久久婷婷| 亚洲欧洲一区二区| 成人激情视频| 亚洲不卡1区| 偷拍自拍一区| 明星裸体视频一区二区| 日日狠狠久久偷偷综合色| 国产美女99p| 高清精品视频| 国产精品美女久久久久av福利| 日韩在线视频一区二区三区 | 亚洲图区在线| 鲁丝一区二区三区免费| 日韩极品在线| 欧美一区1区三区3区公司 | 欧美成年人视频网站欧美| 精品麻豆一区二区三区 | 男人的午夜天堂| 国产精品二三区| 欧美一区二区三区观看| 国产精品国产三级国产aⅴ中文 | 欧美做受喷浆在线观看| av电影在线观看不卡| 国产精品无码一区二区三区免费| 97久久久精品综合88久久| 真人bbbbbbbbb毛片| 久久久久久久久久久久久女国产乱| 97人妻精品一区二区免费| 久久精品视频网| www.xx日本| 亚洲一区二区在线免费观看视频 | 国产精品一区视频网站| 欧美久久精品| 日韩国产精品一区二区| 日韩毛片视频| 日本老太婆做爰视频| 激情欧美日韩| caopor在线视频| 久久99精品久久久久久| 日本精品一二三| 久久久久国产精品人| 午夜激情福利电影| 亚洲香肠在线观看| 国产女主播喷水视频在线观看| 欧美日韩国产美| 成人午夜福利视频| 亚洲天堂av在线免费| 毛片在线不卡| 羞羞色国产精品| 亚洲精品555| 91久久爱成人| 国产videos久久| 色哺乳xxxxhd奶水米仓惠香| 亚洲美女91| 国产精品一区二区小说| 国产91精品久久久久久久网曝门| 国产在线观看无码免费视频| 中文字幕第一区二区| 久久久久久久久久99| 色婷婷一区二区三区四区| 国产男男gay体育生白袜| 国产视频精品va久久久久久| 看女生喷水的网站在线观看| 国内精品久久久久久影视8| 蜜桃视频成人m3u8| 国产精品久久亚洲7777| 成人羞羞视频播放网站| 欧美一级视频免费看| 精品一区二区三区av| 噜噜噜在线视频| 一区二区三区小说| 亚洲天堂手机版| 精品中文字幕久久久久久| 肉体视频在线| 国产区亚洲区欧美区| 欧美男男freegayvideosroom| 伊人色综合影院| 日韩中文字幕一区二区三区| 俄罗斯黄色录像| 中文字幕在线不卡一区二区三区| 日韩毛片一区二区三区| 日韩欧美久久一区| 免费在线观看黄| 国产精品久久久久久久久久新婚| 欧美性生活一级片| 女人被男人躁得好爽免费视频 | 中文字幕有码在线视频| 国产精国产精品| 亲子伦视频一区二区三区| 粉嫩av一区二区三区天美传媒| 日日夜夜一区二区| 青青草视频播放| 亚洲成人免费视| 精品国产18久久久久久| 久久久91精品国产| 国产精品久久久久久妇女| 免费亚洲一区二区| 99热精品在线观看| 免费黄色a级片| 亚洲国产视频一区二区| 国产又粗又猛又爽| 最新69国产成人精品视频免费| 在线观看精品| 欧洲亚洲一区| 日韩国产成人精品| 欧洲女同同性吃奶| 欧美丝袜一区二区| 亚洲av毛片成人精品| 欧美一级电影在线| 精品一区欧美| 激情内射人妻1区2区3区| 91麻豆产精品久久久久久| 免费在线不卡视频| 亚洲精品中文字幕女同| 日韩欧美精品一区二区三区| 精品一区二区国产| 国产欧美大片| 国产精品毛片一区二区| 在线免费观看日本一区| 成年网站在线| 91精品视频在线播放| 一区二区三区毛片免费| 国产精品19p| 亚洲成av人影院| 你懂的在线视频| 国产精品久久久久7777婷婷| 成人在线免费视频观看| 四季av一区二区三区| 亚洲色图20p| 成人毛片在线免费观看| 69国产精品成人在线播放| 黑人操亚洲人| 成人av毛片在线观看| 一区二区三区免费网站| 污污的视频网站在线观看| 日本午夜精品理论片a级appf发布| 国产成人三级| 国产无色aaa| 亚洲亚洲人成综合网络| 男人天堂亚洲二区| 91免费版网站入口| 红桃视频国产一区| 99久久人妻无码精品系列| 欧美狂野另类xxxxoooo| 牛牛精品视频在线| 欧美精品成人一区二区在线观看 | 欧美另类一区二区三区| 日本欧美电影在线观看| 久久综合给合久久狠狠色| 美女视频第一区二区三区免费观看网站| a在线视频播放观看免费观看| 亚洲精品www久久久| 久久女人天堂| 麻豆tv在线播放| 中文字幕在线观看一区二区| 免费观看的毛片| 国产在线高清精品| 国产亚洲亚洲| 91嫩草|国产丨精品入口| 日韩电影在线观看中文字幕| 欧洲亚洲精品久久久久| 精品视频免费在线播放| 亚洲人成7777| 麻豆av电影在线观看| 国产精品av一区| 六月婷婷色综合| 国产日产精品一区二区三区| 久热爱精品视频线路一| 蜜桃a∨噜噜一区二区三区|