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

引入『客戶端緩存』,Redis6算是把緩存玩明白了…

數據庫 Redis
今天Hydra要和大家分享的技術,在思想上和上面兩級緩存有些類似,不過不需要借助其他本地緩存中間件,只使用Redis自身服務端和客戶端就可以實現。

哈嘍大家好啊,我是沒更新就是在家忙著帶娃的Hydra。

在前面介紹兩級緩存的文章中,我們總共給出了4種實現方案,在項目中整合了本地緩存Caffeine和遠程緩存Redis,將應用的性能從僅適用單獨遠程緩存的基礎上,再次提高了一個層次。

而今天Hydra要和大家分享的技術,在思想上和上面兩級緩存有些類似,不過不需要借助其他本地緩存中間件,只使用Redis自身服務端和客戶端就可以實現。這就是Redis6中的客戶端緩存Client-side caching這一項新特性,它允許將數據緩存在應用服務端以及遠程緩存兩個位置。

簡介

客戶端緩存是Redis6眾多新特性中比較實用的一項新功能,我們看看官方文檔,了解一下它的作用:

客戶端緩存是一種用于創建高性能服務的技術,它可以利用應用服務器上的可用內存(這些服務器通常是一些不同于數據庫服務器的節點),在這些應用服務端來直接存儲數據庫中的一些信息。

與訪問數據庫等網絡服務相比,訪問本地內存所需要的時間消耗要少得多,因此這個模式可以大大縮短應用程序獲取數據的延遲,同時也能減輕數據庫的負載壓力。

看到這,我心想這不是和其他本地緩存Guava、Caffeine啥的一樣嗎,換湯不換藥,都是使用的應用服務的內存罷了。要說有什么好處,可能就是我在項目中能少引入一個中間件了。

不過,我這點淺薄的猜想,在看完客戶端緩存的具體應用模式后,徹底被顛覆了。

兩種模式

在了解了客戶端緩存的基本功能后,我們來看看它的兩種基本應用模式。Redis的客戶端緩存支持被稱為tracking,個人感覺翻譯為對key的追蹤就很好理解,它具有兩種模式:

  • 默認模式,服務端會記錄某個客戶端具體訪問過哪一些key,當這些key對應的值發生變化時,會發送失效消息給這些客戶端。這個模式會在服務端消耗一些內存,但是發送失效消息的范圍,被限制在了客戶端存儲了的key的集合范圍內。
  • 廣播模式,服務端不會再記錄某個客戶端訪問了哪些key,因此這個模式不消耗服務端的內存。取而代之的是,客戶端需要訂閱key的特定前綴,每當符合這個前綴的key對應的值發生改變時,客戶端都會收到通知消息。

看到這里,它和我們之前使用的兩級緩存之間差異,是不是已經初露端倪了呢?如果還不熟悉兩級緩存的架構,那么可以先來看看下面的這張圖:

這種架構在理論上看起來不錯,但是實際使用起來需要注意的點不少,尤其是在分布式模式下,需要保證各個主機下的一級緩存的一致性問題,回想一下我們原先的解決方案,可以使用redis本身的發布/訂閱功能來實現:

而客戶端緩存的出現,大大簡化了這一過程。我們以默認模式為例,看一下使用了客戶端緩存后的操作過程:

相比原先的發布/訂閱模式,我們可以看到明顯的優勢,使用客戶端緩存功能后,我們只需要單純的修改redis中的數據就可以了,手動處理發布/訂閱消息的這一過程可以完全被省略。

優勢

到這里,在了解了客戶端緩存的基本功能與兩種模式后,我們來對比一下,和傳統的只使用redis做遠程緩存、以及使用整合后的兩級緩存相比較,客戶端緩存具有什么樣的優勢。

  • 當應用的服務端存在緩存時,會直接讀取本地緩存,能夠減少網絡訪問上造成的延遲,從而加快訪問速度。
  • 同時也能減少訪問redis服務端的次數,降低redis的負載壓力。
  • 在分布式環境下,不再需要通過發布訂閱來通知其他主機更新本地緩存,來保證數據的一致性。使用客戶端緩存后,它所具有的原生的消息通知功能,能很好地支持作廢本地緩存,保證之后訪問時能取到更新后的新數據。

誤區

在開始演示客戶端緩存的使用之前,我們先來糾正一個誤區。

雖然這個新特性被稱為客戶端緩存,但是redis本身不提供在應用服務端緩存數據的功能,這個功能要由訪問redis的客戶端自己去實現。

說白了,也就是redis服務端只負責通知你,你緩存在應用服務本地的這個key已經作廢了,至于你本地如何緩存的這些數據,redis并不關心,也不負責。

功能演示

下面將通過一些實例來進行演示,本文代碼的運行前提條件是你已經裝好了Redis6.x版本,linux環境下可以直接從官網下載后編譯安裝,windows環境下的安裝可以參考 手摸手教你在Windows環境下運行Redis6.x 這篇文章。

概念上的東西我們也大體了解了,下面我們分別來看一下客戶端緩存具體實現的三種模式(至于為什么多了一種,后面再來細說)。在正式開始前,強烈建議大家先花個十幾分鐘了解一下 Redis6底層的通信協議RESP3,否則在看到具體的通信內容時可能會存在一些疑問。

首先做一下準備工作,通過telnet連接redis服務,并切換到resp3協議模式:


telnet 127.0.0.1 6379
hello 3

1、默認模式

在使用客戶端連接到redis服務后,需要先通過指令開啟tracking模式的功能,因為在客戶端連接后這個選項是默認關閉的,會無法收到失效類型的push消息:

#開啟
client tracking on
#關閉
client tracking off

當開啟tracking后的默認模式下,redis服務端會記錄每個客戶端請求過的key,當key對應的值發生變化時,會發送失效信息給客戶端。簡單總結一下,也就是說這個模式能夠生效的必要前提條件有兩個:

  • 開啟tracking。
  • 客戶端訪問過某個key。

下面我們還是在telnet中來模擬一下這個過程,分別啟動兩個redis客戶端,在client1中先執行get命令后,再在client2對相同的key執行set操作修改它的值,之后就會在client1中收到push類型的消息。

push類型的消息我們在RESP3中介紹過了,這里簡單再嘮叨兩句:

>2
$10
invalidate
*1
$4
user

起始的第一字節>表示該消息為push類型,后面消息體中包含了兩部分內容,第一部分表示收到的消息類型為invalidate,也就是作廢類型的信息,第二部分則是需要作廢的key是user。

除此之外,當一個緩存的key到達失效時間導致過期,或是因為到達最大內存,要使用驅逐策略進行驅逐時,也會對客戶端發送PUSH的消息。下面以緩存的key過期為例:

另外,對于單個key來說,這個tracking消息只會對客戶端發送一次,當第二次修改該key所對應的值后,客戶端不會再收到tracking的消息。只有對這個key再執行一次get命令,之后才會再次收到tracking消息。

默認模式雖然使用起來簡單,但是需要在服務端存儲客戶端的訪問數據,記錄哪些key被哪些客戶端訪問過。如果訪問的不是少量的熱點數據的話,可能會占用大量redis服務端的內存空間。應對這種情況,可以試一試下面要介紹的廣播模式。

2、廣播模式

在廣播模式BCAST下,redis服務端不再記錄key的訪問情況,而是無差別地向所有開啟tracking廣播的客戶端發送消息。這樣一來,好處就是不需要浪費redis服務端的內存進行記錄,但是壞處就是客戶端可能會收到過多的消息,其中可能還會包含自己不需要的一些key。

在使用前,需要先通過命令開啟廣播模式:

client tracking on bcast

下面,我們通過一個例子來進行廣播模式的使用演示:

可以看到在開啟廣播模式后,只要在client2中修改了key對應的值,在client1中都會收到作廢消息,而不管client1之前在本地是否進行過緩存。

并且,另外一點和默認模式不同的是,廣播模式是能夠重復多次收到一個key的失效消息的,因為服務端沒有記錄,所以只要有key發生了修改,客戶端就會收到失效消息。

這時候,有的小伙伴可能就要問了,如果我不想收到這么多沒用的冗余消息,有沒有什么辦法進行一下過濾或精簡呢?

答案是可以的,在廣播模式下,客戶端可以只關注一些特定前綴的key,表示我只需要接收這些前綴的key,其他的就不要發給我了。命令格式如下:

client tracking on bcast prefix myprefix

再來看一下使用過程的示例:

可以看到,在設置了只關注以order:作為前綴的key后,成功過濾掉了user的失效消息。從這個角度來看,也要求了我們在緩存一個類型的數據時,都以相同的單詞作為前綴,規范了我們在使用緩存中對key的命名規則。

至于在業務中具體要使用哪種模式,可能更多的需要進行一下權衡。看一下你究竟是能忍受占用更多redis服務端的內存,還是能夠忍受收到大量不需要的失效消息。

3、轉發模式

默認模式和廣播模式的生效,都要在開啟RESP3協議的前提下,具體原因看過上面的例子大家應該也都清楚了,因為要使用tracking的話,就必須要借助到RESP3協議中的新的push消息類型。

那么如果客戶端還是使用的舊版本RESP V2的話,也想要體驗這一功能,應該如何進行改造呢?

不得不說redis6的開發者想的還是蠻全面的,為了適配RESP V2,專門設計了一種新的轉發模式,允許使用舊版本協議的客戶端通過Pub/Sub發布訂閱功能來接收key的失效信息。

從上面這張圖可以看到,轉發模式的核心就是redis服務端會將原先push類型的tracking信息,轉發到訂閱了_redis_:invalidate這一信道的被指定的客戶端上。

我們來梳理一下上面的流程,首先在client1需要使用指令開啟轉發模式:

client tracking on bcast redirect [client-id]

相對廣播模式,多了兩個參數,redirect表示為轉發模式,后面的client-id表示消息要發送給哪一個客戶端,客戶端的id可以在client2上通過client id指令獲取。

在client2中,則需要訂閱指定的信道:

subscribe _redis_:invalidate

其實說白了,轉發模式還是使用的發布訂閱功能罷了,只不過redis幫我們解放了雙手,把發送消息的工作由自己完成了。整個操作的流程如下圖所示:

可以看到,client2中收到的消息格式與之前的push類型消息不同,是一條RESP V2中多條批量回復格式的消息,表示的含義同樣是收到的key已經作廢掉了。

需要注意的是,雖然說開啟轉發模式的指令中也帶了一個bcast,但是它和廣播模式有著非常大的區別。在轉發模式下,key的作廢消息只能被轉發到一個客戶端上,如果先后執行兩條指定轉發指令,那么后執行的指令會覆蓋前一指令中轉發的client-id。

看到這里是不是多少感覺這個轉發模式有點雞肋,畢竟實際的業務場景中很有可能會有多個客戶端的存在,只能轉發一個實在是有點說不過去了。不過,也有可能作者就是這么設計,留點缺陷,好讓大家更快地擁抱RESP3……

總結

好啦,到這里客戶端緩存的基本理論和使用就介紹的差不多了,不得不說,Redis6的這個新特性確實給了我們眼前一亮的感覺。從這個新特性也可以看出,Redis大有把緩存從服務端的局限中掙脫出來,染指向客戶端,一統緩存江湖的意味。

不過這個過程應該并不簡單,就像我們前面說的,畢竟只有Redis服務端還不夠,還需要優秀的客戶端進行支持才行。

那么下一篇文章,我們就來從實戰角度,看看如何改造客戶端,讓client-side caching能在項目中落地開花。

這次的分享就到這里,我是Hydra,下篇文章再見。

官方文檔:

https://redis.io/docs/manual/client-side-caching/。

責任編輯:姜華 來源: 碼農參上
相關推薦

2020-05-11 21:31:02

Redis 6.0緩存客戶端

2020-05-20 14:45:38

緩存MySQL數據庫

2022-05-11 13:56:08

Java項目redis客戶端

2021-03-06 08:10:16

Redis6 Java架構分布式框架

2015-08-17 09:48:29

C#客戶端分布式緩存

2022-09-23 08:02:42

Kafka消息緩存

2009-07-10 18:15:24

HTTP頭

2011-11-30 14:21:19

Java分布式緩存

2010-07-29 09:08:20

Flex客戶端緩存

2023-12-26 08:16:56

Kafka緩存架構客戶端

2019-10-12 14:19:05

Redis數據庫緩存

2023-03-10 13:33:00

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

2021-08-02 19:18:32

Redis緩存高并發

2018-06-26 15:58:39

進程內緩存緩存數據

2021-06-05 09:01:01

Redis緩存雪崩緩存穿透

2010-07-19 17:35:09

Telnet客戶端IPv6

2019-05-07 18:17:26

Redis服務器數據

2022-12-10 22:52:54

Redis緩存數據

2022-03-04 14:57:50

緩存數據庫代碼
點贊
收藏

51CTO技術棧公眾號

麻豆精品一区二区三区| 亚洲午夜久久| 一二三四区精品视频| 国产不卡一区二区三区在线观看| 精品一区二区三区人妻| 啪啪国产精品| 欧美美女直播网站| av免费观看大全| av在线二区| 粉嫩久久99精品久久久久久夜| 538国产精品一区二区在线| 国产精品视频在| 国内视频在线精品| 欧美日韩日本视频| 丁香花在线影院观看在线播放| 国产中文在线| 成人av网站在线| 国产在线播放不卡| 99精品在线播放| 亚洲欧美伊人| 丝袜美腿精品国产二区| fc2成人免费视频| 自拍偷拍亚洲图片| 在线免费观看日韩欧美| 日韩精品在线中文字幕| 91香蕉在线观看| 日本一区二区视频在线| 国产精品自拍首页| ,亚洲人成毛片在线播放| 国产日韩亚洲| 免费av一区二区| 中文字幕黄色网址| 免费精品国产的网站免费观看| 日韩视频一区二区在线观看| 人人爽人人av| 芒果视频成人app| 亚洲成在人线在线播放| 中文字幕av日韩精品| 国产视频三级在线观看播放| 97精品电影院| 国产精品久久久久免费| 99久久精品国产色欲| 久久精品国产免费| 国产精品91久久久| 国产午夜性春猛交ⅹxxx| 国产精品草草| 久久99亚洲热视| 免费在线黄色网| 91偷拍一区二区三区精品| 一个人www欧美| 加勒比综合在线| 亚洲伊人春色| 亚洲网站在线播放| 日韩一级av毛片| 国产欧美一区| 夜夜嗨av色一区二区不卡| av电影在线不卡| 国产精品免费不| 伊人男人综合视频网| 亚洲自拍偷拍图| 国产成人影院| 色偷偷噜噜噜亚洲男人的天堂| 一级黄色毛毛片| 久久精品国产亚洲夜色av网站 | 国产九九在线观看| 韩国女主播一区二区| 欧美视频一二三区| 在线观看岛国av| 一区二区三区国产好| 精品日韩一区二区| 亚洲激情 欧美| 夜色77av精品影院| 在线观看国产精品91| 无码人中文字幕| 亚洲精品小说| 97视频人免费观看| 黄色片视频免费| 奇米在线7777在线精品| 91久久久久久| 黄频在线免费观看| 国产亚洲成av人在线观看导航| 日韩在线第一区| 国产黄色在线免费观看| 亚洲国产日韩一区二区| 国产美女三级视频| 亚洲人成网站在线在线观看| 精品日韩99亚洲| www.狠狠爱| 亚洲电影影音先锋| 国内精品久久久久影院优| 国产精品免费精品一区| 久草精品在线观看| 国产在线一区二区三区四区| 欧美xxx.com| 亚洲婷婷在线视频| 亚洲不卡中文字幕无码| 亚洲精品.com| 欧美va亚洲va香蕉在线| 天天躁日日躁aaaa视频| 国一区二区在线观看| 国产精品99久久久久久人| 99久久精品日本一区二区免费 | 中文字幕成人动漫| 午夜久久tv| 国产脚交av在线一区二区| 国产视频第一页| 久久久亚洲精品石原莉奈| 少妇高潮流白浆| 美女18一级毛片一品久道久久综合| 欧美嫩在线观看| 日韩一级视频在线观看| 亚洲最大黄网| 国产精品久久久久免费a∨| 亚洲乱码在线观看| 国产精品麻豆一区二区| 18禁男女爽爽爽午夜网站免费| 国产成人免费视频网站视频社区| 日韩久久免费视频| 久久久久久久久久网站| 日韩成人免费在线| 久久久婷婷一区二区三区不卡| a级影片在线观看| 在线观看av一区| 国产激情视频网站| 欧美日本中文| 91网在线免费观看| 中文字幕在线观看日本| 色中色一区二区| jizz日本免费| 精品电影一区| 成人黄色片视频网站| 视频一区二区三区不卡| 色老汉一区二区三区| 成人在线电影网站| 欧美日本中文| 亚洲综合社区网| 黄色成人在线观看| 欧美日韩大陆在线| 自拍偷拍你懂的| 男人操女人的视频在线观看欧美| 久久久久久久免费| 国产社区精品视频| 日韩成人高清在线| 精品成人免费视频| av亚洲产国偷v产偷v自拍| 成人av在线播放观看| 日本高清精品| 欧美精品生活片| 国产亲伦免费视频播放| 自拍偷拍亚洲激情| 国产福利精品一区二区三区| 区一区二视频| 国产在线a不卡| 二区在线播放| 日韩一区二区三区四区五区六区| 天天操天天操天天操天天操天天操| 老司机午夜精品| 婷婷视频在线播放| 香蕉免费一区二区三区在线观看 | 久久精品av麻豆的观看方式| 日韩中文一区| 国产亚洲欧美日韩精品一区二区三区 | 男女av免费观看| 国产99久久久国产精品成人免费| 欧洲美女免费图片一区| 国产美女性感在线观看懂色av| 在线观看日韩精品| 最新av电影网站| 成人综合在线观看| 久久久久久久久久久福利| 国产一区二区三区网| 国产日韩欧美另类| 男女免费观看在线爽爽爽视频| 亚洲国产精品久久| 国产第一页在线观看| 国产精品九色蝌蚪自拍| 男生和女生一起差差差视频| 欧美日韩18| 欧美日韩大片一区二区三区| 激情亚洲小说| 国内伊人久久久久久网站视频 | 国产精品www网站| 欧美三级黄网| 亚洲成人精品在线| 久久这里只有精品9| 亚洲精品自拍动漫在线| 性色av蜜臀av色欲av| 麻豆精品国产91久久久久久| 免费网站永久免费观看| 狠狠色狠狠色综合婷婷tag| 91中文字幕在线| 新版的欧美在线视频| 久久精品国产清自在天天线 | 五月天婷婷导航| 亚洲摸摸操操av| 黄瓜视频污在线观看| 国内一区二区视频| 久久久久久久激情| 亚洲影视一区二区三区| 欧美日韩精品免费观看| 91麻豆精品国产91久久久久推荐资源| 欧美最猛性xxxx| 欧洲精品二区| 中文字幕亚洲一区二区三区五十路| a天堂视频在线| 在线免费精品视频| 日韩欧美三级在线观看| 亚洲婷婷在线视频| 中文字幕免费视频| 99免费精品在线| 四虎1515hh.com| 日本免费新一区视频| 少妇高潮毛片色欲ava片| 99久精品视频在线观看视频| 欧美精品久久久| 波多野结衣欧美| 亚洲综合精品一区二区| 黄色成人在线观看网站| 国产999精品视频| 激情视频网站在线播放色| 麻豆国产精品va在线观看不卡| 国产特黄在线| 亚洲欧美日韩一区二区在线| 免费观看成年人视频| 欧美一区二区三区成人| 久久国产香蕉视频| 色又黄又爽网站www久久| 日韩大片免费在线观看| 亚洲在线视频一区| 久久久久香蕉视频| 亚洲人被黑人高潮完整版| 国产美女高潮视频| 中国av一区二区三区| 亚洲精品国产精品国自产网站| 99国产欧美另类久久久精品| 亚洲v在线观看| 国产成人精品网址| 人妻体体内射精一区二区| 狠狠色狠狠色合久久伊人| 手机av在线免费| 久久国产麻豆精品| 欧美婷婷精品激情| 毛片av一区二区| 毛片毛片毛片毛| 精彩视频一区二区| 91亚洲一区二区| 国产成人午夜视频| 国产精品日日摸夜夜爽| 成人黄页在线观看| 波多野结衣一本| 国产日韩欧美a| 一级免费黄色录像| 亚洲日本成人在线观看| 国产精品久久久久久久精| 一区二区三区在线影院| 国产精品theporn动漫| 亚洲成在人线免费| 一级片免费在线播放| 欧美熟乱第一页| 99久久精品国产一区色| 亚洲第一福利网站| 偷拍精品一区二区三区| 亚洲少妇中文在线| 日韩欧美小视频| 欧美国产日韩二区| 伊人网在线播放| 国产精品手机播放| 日韩在线成人| 免费一区二区三区在在线视频| 国内成人精品| 韩国黄色一级大片| 一本色道久久综合亚洲精品不卡| 欧美精品色婷婷五月综合| 久久精品99久久久| 成人区人妻精品一区二| 国产午夜精品久久久久久免费视| 最新日韩免费视频| 亚洲国产精品久久不卡毛片 | 寂寞少妇一区二区三区| 99久久综合网| 久久日韩粉嫩一区二区三区 | 天天色综合色| 国产3p露脸普通话对白| 日本va欧美va精品| 无码人妻精品一区二区三区99不卡| 91在线观看免费视频| 少妇高潮惨叫久久久久| 亚洲一区二区av电影| 日韩乱码一区二区三区| 日韩美一区二区三区| 国产中文在线观看| 色综合老司机第九色激情| 九九热线视频只有这里最精品| 亚洲最大av网| 国产日产精品_国产精品毛片| 久久久久久久免费视频| 久久精品网址| 日本一级大毛片a一| 国产欧美精品区一区二区三区| 玖玖爱免费视频| 在线观看国产91| 五月婷婷在线播放| 久久国产精品久久国产精品| 欧美自拍电影| 国产精品久久久久免费| 91精品国产麻豆国产在线观看 | 在线丝袜欧美日韩制服| 国产一区白浆| wwwww在线观看| 国产精品国产三级国产aⅴ中文 | av大片在线| 国产精品欧美一区二区三区奶水| 国产精品毛片久久久| 秋霞在线一区二区| 日韩国产欧美在线视频| 亚洲精品乱码久久| 一区二区成人在线| 国产口爆吞精一区二区| 亚洲一区二区久久久| 九色porny丨国产首页在线| 亚洲在线www| 日韩欧美精品综合| 免费激情视频在线观看| 99精品在线免费| 久热这里只有精品在线| 日韩一级二级三级精品视频| av电影在线观看| 国产999在线观看| 亚洲v天堂v手机在线| 阿v天堂2018| 成人免费毛片高清视频| 欧美日韩偷拍视频| 日韩三级免费观看| caoporn免费在线| 亚洲japanese制服美女| 99久久精品国产亚洲精品 | 国产suv精品一区二区883| 欧美爱爱免费视频| 69堂国产成人免费视频| 麻豆网站在线免费观看| 国产伦精品免费视频| 久久中文字幕av| 91蝌蚪视频在线| 亚洲精品成a人| 国产自产一区二区| 久久久久五月天| 精品少妇一区| 国产亚洲综合视频| 久久久久国产精品麻豆| 乱子伦一区二区三区| 国产亚洲精品美女久久久久| 日韩一区二区三区在线免费观看 | 成年人免费在线视频| 国产精品国产自产拍高清av水多| 国产一区二区三区网| 亚洲综合婷婷久久| 亚洲人成7777| 国产1区在线观看| **欧美日韩vr在线| 欧美猛男做受videos| 超碰av在线免费观看| 成人免费在线视频观看| 亚洲国产精品久久人人爱潘金莲| 欧美激情极品视频| 亚洲97av| 亚洲综合日韩欧美| 亚洲男同性恋视频| 日韩在线观看视频一区二区三区| 4438全国成人免费| 成人影院天天5g天天爽无毒影院| 亚洲免费黄色录像| 亚洲国产视频a| 东凛在线观看| 97se亚洲综合| 先锋影音久久久| 免费黄色国产视频| 亚洲第一色中文字幕| 亚洲精品国产嫩草在线观看| 伊人久久大香线蕉精品| 成人午夜碰碰视频| 午夜精品一区二| 欧美大片va欧美在线播放| 蜜桃一区av| 国内国产精品天干天干| 午夜一区二区三区在线观看| 成人在线视频成人| 99国产精品久久久久老师| 久久久久久黄| 欧美精品入口蜜桃| 伊人伊成久久人综合网小说| 精品国产伦一区二区三区观看说明| 999在线观看视频| 中文字幕一区av| 色鬼7777久久| 亚洲最大成人免费视频| 视频一区二区中文字幕| 九九视频免费看| 色一情一乱一区二区| 日韩高清一级| wwwxxxx在线观看|