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

圖解Redis,Redis更新策略、緩存一致性問題

數(shù)據(jù)庫 Redis
Redis的集群主節(jié)點(diǎn)數(shù)量一般不會(huì)超過1000個(gè)。集群中節(jié)點(diǎn)越多,心跳包的消息體內(nèi)的數(shù)據(jù)就越多,如果節(jié)點(diǎn)過多,也會(huì)造成網(wǎng)絡(luò)擁堵。因此Redis的作者Salvatore Sanfilippo不建議Redis Cluster的節(jié)點(diǎn)超過1000個(gè),對(duì)于節(jié)點(diǎn)數(shù)在1000個(gè)以內(nèi)的Redis Cluster,16384個(gè)槽位完全夠用。

一、為什么Redis集群的最大槽數(shù)是16384個(gè)?

2^14^=16384、2^16^=65536。

如果槽位是65536個(gè),發(fā)送心跳信息的消息頭是65536/8/1024 = 8k。

如果槽位是16384個(gè),發(fā)送心跳信息的消息頭是16384/8/1024 = 2k。

因?yàn)镽edis每秒都會(huì)發(fā)送一定數(shù)量的心跳包,如果消息頭是8k,未免有些太大了,浪費(fèi)網(wǎng)絡(luò)資源。

上面提過,Redis的集群主節(jié)點(diǎn)數(shù)量一般不會(huì)超過1000個(gè)。集群中節(jié)點(diǎn)越多,心跳包的消息體內(nèi)的數(shù)據(jù)就越多,如果節(jié)點(diǎn)過多,也會(huì)造成網(wǎng)絡(luò)擁堵。因此Redis的作者Salvatore Sanfilippo不建議Redis Cluster的節(jié)點(diǎn)超過1000個(gè),對(duì)于節(jié)點(diǎn)數(shù)在1000個(gè)以內(nèi)的Redis Cluster,16384個(gè)槽位完全夠用。

Redis主節(jié)點(diǎn)的哈希槽信息是通過bitmap存儲(chǔ)的,在傳輸過程中,會(huì)對(duì)bitmap進(jìn)行壓縮,bitmap的填充率越低,壓縮率越高。

bitmap 填充率 = slots / N (N表示節(jié)點(diǎn)數(shù))。

也就是說slots越小,填充率就會(huì)越小,壓縮率就會(huì)越高,傳輸效率就會(huì)越高。?

二、Redis集群是什么?

由于數(shù)據(jù)量過大,單個(gè)master復(fù)制集難以承擔(dān),因此需要多個(gè)master進(jìn)行承擔(dān)工作,每個(gè)master存儲(chǔ)部分?jǐn)?shù)據(jù),這就是Redis集群。

圖片

Redis集群包含多個(gè)master,一個(gè)master對(duì)應(yīng)多個(gè)slave,由于集群自帶故障轉(zhuǎn)移機(jī)制,因此Redis集群不用再使用哨兵sentinel功能。

Redis Cluster是Redis3.0引入的一種無中心化的集群,客戶端可以向任何一個(gè)節(jié)點(diǎn)通信,不同節(jié)點(diǎn)間的數(shù)據(jù)不互通,Redis Cluster將數(shù)據(jù)的key通過將CRC16算法的結(jié)果取模16383后,分給16384個(gè)slot槽,集群的每個(gè)節(jié)點(diǎn)負(fù)責(zé)一部分hash槽,節(jié)點(diǎn)只負(fù)責(zé)管理映射到這個(gè)槽的KV數(shù)據(jù),對(duì)于不是當(dāng)前槽的KV數(shù)據(jù),會(huì)向客戶端發(fā)送一個(gè)MOVED,表示需要客戶端重新重定向到其它節(jié)點(diǎn)。

使用Redis集群時(shí),我們將需要存儲(chǔ)的數(shù)據(jù)分配到多臺(tái)Redis服務(wù)器上,稱為分片。

數(shù)據(jù)如何分片?

對(duì)key進(jìn)行CRC16(key)算法處理并通過對(duì)總分片數(shù)量取模,然后使用確定性哈希函數(shù),將指定的key多次映射到同一個(gè)分片上。這種模式下,在進(jìn)行服務(wù)器擴(kuò)容的時(shí)候,不會(huì)影響集群的使用狀態(tài)。

Redis集群不保證強(qiáng)一致性,在特定條件下,Redis集群可能會(huì)丟掉一些命令。

三、slot槽位映射的方式

1、哈希取余分區(qū)

圖片

哈希取余分區(qū)的優(yōu)點(diǎn)是分配均勻,使用hash(key)/3的形式讓固定的一部分請(qǐng)求存入指定的master,每臺(tái)master處理一部分?jǐn)?shù)據(jù),起到了負(fù)載均衡的效果。

哈希取余分區(qū)最大的缺點(diǎn)就是不方便擴(kuò)容,當(dāng)需要擴(kuò)容時(shí),映射關(guān)系需要進(jìn)行重新計(jì)算。

2、一致性哈希算法

(1)一致性哈希算法是什么?

一致性哈希算法在1997年由麻省理工學(xué)院提出,是一種特殊的哈希算法,目的是解決分布式緩存的問題。在移除或者添加一個(gè)服務(wù)器時(shí),能夠盡可能小地改變已存在的服務(wù)請(qǐng)求與處理請(qǐng)求服務(wù)器之間的映射關(guān)系。一致性哈希解決了簡單哈希算法在分布式哈希表( Distributed Hash Table,DHT) 中存在的動(dòng)態(tài)伸縮等問題。

一致性哈希算法將整個(gè)哈希值空間映射成一個(gè)虛擬的圓環(huán),整個(gè)哈??臻g的取值范圍為0~2^32^-1,整個(gè)空間按順時(shí)針方向組織,0~2^32^-1在零點(diǎn)中方向重合。

接下來使用如下算法對(duì)服務(wù)請(qǐng)求進(jìn)行映射,將服務(wù)請(qǐng)求使用哈希算法算出對(duì)應(yīng)的hash值,然后根據(jù)hash值的位置沿圓環(huán)順時(shí)針查找,第一臺(tái)遇到的服務(wù)器就是所對(duì)應(yīng)的處理請(qǐng)求服務(wù)器。

當(dāng)增加一臺(tái)新的服務(wù)器,受影響的數(shù)據(jù)僅僅是新添加的服務(wù)器到其環(huán)空間中前一臺(tái)的服務(wù)器(也就是順著逆時(shí)針方向遇到的第一臺(tái)服務(wù)器)之間的數(shù)據(jù),其他都不會(huì)受到影響。

綜上所述,一致性哈希算法對(duì)于節(jié)點(diǎn)的增減都只需重定位環(huán)空間中的一小部分?jǐn)?shù)據(jù),具有較好的容錯(cuò)性和可擴(kuò)展性。

圖片

(2)一致性哈希算法的優(yōu)點(diǎn)

  1. 可擴(kuò)展性。
  2. 更好的適應(yīng)數(shù)據(jù)的快速增長,當(dāng)某個(gè)分片存儲(chǔ)數(shù)據(jù)過多時(shí),可以將其一分為二,不需要對(duì)全部的數(shù)據(jù)進(jìn)行重新hash計(jì)算和劃分。

(3)一致性哈希算法的缺點(diǎn)

當(dāng)服務(wù)節(jié)點(diǎn)太少時(shí),容易造成數(shù)據(jù)傾斜,分配不均。

大量的緩存數(shù)據(jù)集中到了一臺(tái)或者幾臺(tái)服務(wù)節(jié)點(diǎn)上,稱為數(shù)據(jù)傾斜。

四、Redis更新策略

1、如果Redis中有數(shù)據(jù),需要和數(shù)據(jù)庫中的值相同。

2、如果Redis中無數(shù)據(jù),數(shù)據(jù)庫中的最新值要對(duì)Redis進(jìn)行同步更新。

五、Redis讀寫緩存

1、同步直寫策略

寫入數(shù)據(jù)庫也同步寫Redis緩存,緩存和數(shù)據(jù)庫中的數(shù)據(jù)一致;對(duì)于讀寫緩存來說,要保證緩存和數(shù)據(jù)庫中的數(shù)據(jù)一致,就要保證同步直寫策略。

2、異步緩寫策略

某些業(yè)務(wù)運(yùn)行中,MySQL數(shù)據(jù)更新之后,允許在一定時(shí)間后再進(jìn)行Redis數(shù)據(jù)同步,比如物流系統(tǒng)。

當(dāng)出現(xiàn)異常情況時(shí),不得不將失敗的動(dòng)作重新修補(bǔ),需要借助rabbitmq或kafka進(jìn)行重寫。

六、雙檢加鎖策略

多個(gè)線程同時(shí)去查詢數(shù)據(jù)庫的這條數(shù)據(jù),那么我們可以在第一個(gè)查詢數(shù)據(jù)的請(qǐng)求上使用一個(gè) 互斥鎖來鎖住它。

其他的線程走到這一步拿不到鎖就等著,等第一個(gè)線程查詢到了數(shù)據(jù),然后做緩存。

后面的線程進(jìn)來發(fā)現(xiàn)已經(jīng)有緩存了,就直接走緩存。

public String get(String key){
// 從Redis緩存中讀取
String value = redisTemplate.get(key);

if(value != null){
return value;
}

synchronized (RedisTest.class){
// 重新嘗試從Redis緩存中讀取
value = redisTemplate.get(key);
if(value != null){
return value;
}

// 從MySQL數(shù)據(jù)庫中查詢
value = studentDao.get(key);
// 寫入Redis緩存
redisTemplate.setnx(key,value,time);
return value;
}
}

七、數(shù)據(jù)庫和緩存一致性的更新策略

1、先更新數(shù)據(jù)庫,再更新Redis

按照常理出牌的話,應(yīng)該都是如此吧?那么,這種情況下,會(huì)有啥問題呢?

如果更新數(shù)據(jù)庫成功后,更新Redis之前異常了,會(huì)出現(xiàn)什么情況呢?

數(shù)據(jù)庫與Redis內(nèi)緩存數(shù)據(jù)不一致。

2、先更新緩存,再更新數(shù)據(jù)庫

多線程情況下,會(huì)有問題。

比如

  1. 線程1更新redis = 200;
  2. 線程2更新redis = 100;
  3. 線程2更新MySQL = 100;
  4. 線程1更新MySQL = 200;

結(jié)果呢,Redis=100、MySQL=200;我擦!

3、先刪除緩存,再更新數(shù)據(jù)庫

  1. 線程1刪除了Redis的緩存數(shù)據(jù),然后去更新MySQL數(shù)據(jù)庫。
  2. 還沒等MySQL更新完畢,線程2殺來,讀取緩存數(shù)據(jù)。
  3. 但是,此時(shí)MySQL數(shù)據(jù)庫還沒更新,線程2讀取了MySQL中的舊值,然后線程2,還會(huì)將舊值寫入Redis作為數(shù)據(jù)緩存。
  4. 線程1更新完MySQL數(shù)據(jù)后,發(fā)現(xiàn)Redis中已經(jīng)有數(shù)據(jù)了,之前都刪過了,那我就不更新了。

完蛋了。。

延時(shí)雙刪

延時(shí)雙刪可以解決上面的問題,只要sleep的時(shí)間大于線程2讀取數(shù)據(jù)再寫入緩存的時(shí)間就可以了,也就是線程1的二次清緩存操作要在線程2寫入緩存之后,這樣才能保證Redis緩存中的數(shù)據(jù)是最新的。

/**
* 延時(shí)雙刪
* @autor 哪吒編程
*/
public void deleteRedisData(Student stu){
// 刪除Redis中的緩存數(shù)據(jù)
jedis.del(stu);

// 更新MySQL數(shù)據(jù)庫數(shù)據(jù)
studentDao.update(stu);

// 休息兩秒
try {
TimeUnit.SECONDS.sleep(2);
} catch (InterruptedException e) {
e.printStackTrace();
}

// 刪除Redis中的緩存數(shù)據(jù)
jedis.del(stu);
}

延遲雙刪最大的問題就是sleep,在效率為王的今天,sleep能不用還是不用為好。

你不睡我都嫌你慢,你還睡上了...

4、先更新數(shù)據(jù)庫,再刪除緩存

  1. 線程1先更新數(shù)據(jù)庫,再刪除Redis緩存。
  2. 線程2在線程1刪除Redis緩存之前發(fā)起請(qǐng)求,得到了未刪除的Redis緩存。
  3. 線程1此時(shí)才刪除Redis緩存數(shù)據(jù)。

問題還是有,這翻來覆去的,沒完沒了了。

這種情況如何解決呢?

引入消息中間件解決戰(zhàn)斗,再一次詳細(xì)的復(fù)盤一下。

  1. 更新數(shù)據(jù)庫。
  2. 數(shù)據(jù)庫將操作信息寫入binlog日志。
  3. 訂閱程序提取出key和數(shù)據(jù)。
  4. 嘗試刪除緩存操作,發(fā)現(xiàn)刪除失敗。
  5. 將這些數(shù)據(jù)信息發(fā)送到消息中間件中。
  6. 從消息中間件中獲取該數(shù)據(jù),重新操作。

5、總結(jié)

哪吒推薦使用第四種方式,先更新數(shù)據(jù)庫,再刪除緩存。

方式①和方式②缺點(diǎn)太過明顯,不考慮;方式③中的sleep,總是讓人頭疼;方式④是一個(gè)比較全面的方案,但是增加了學(xué)習(xí)成本、維護(hù)成本,因?yàn)樵黾恿讼⒅虚g件。

八、MySQL主從復(fù)制工作原理

圖片

1、當(dāng) master 主服務(wù)器上的數(shù)據(jù)發(fā)生改變時(shí),則將其改變寫入二進(jìn)制事件日志文件中。

2、salve 從服務(wù)器會(huì)在一定時(shí)間間隔內(nèi)對(duì) master 主服務(wù)器上的二進(jìn)制日志進(jìn)行探測(cè),探測(cè)其是否發(fā)生過改變。

如果探測(cè)到 master 主服務(wù)器的二進(jìn)制事件日志發(fā)生了改變,則開始一個(gè) I/O Thread 請(qǐng)求 master 二進(jìn)制事件日志。

3、同時(shí) master 主服務(wù)器為每個(gè) I/O Thread 啟動(dòng)一個(gè)dump  Thread,用于向其發(fā)送二進(jìn)制事件日志。

4、slave 從服務(wù)器將接收到的二進(jìn)制事件日志保存至自己本地的中繼日志文件中。

5、salve 從服務(wù)器將啟動(dòng) SQL Thread 從中繼日志中讀取二進(jìn)制日志,在本地重放,使得其數(shù)據(jù)和主服務(wù)器保持一致。

6、最后 I/O Thread 和 SQL Thread 將進(jìn)入睡眠狀態(tài),等待下一次被喚醒。

本文轉(zhuǎn)載自微信公眾號(hào)「哪吒編程」,可以通過以下二維碼關(guān)注。轉(zhuǎn)載本文請(qǐng)聯(lián)系哪吒編程公眾號(hào)。

責(zé)任編輯:姜華 來源: 哪吒編程
相關(guān)推薦

2024-04-11 13:45:14

Redis數(shù)據(jù)庫緩存

2020-05-12 10:43:22

Redis緩存數(shù)據(jù)庫

2024-11-14 07:10:00

2022-09-06 15:30:20

緩存一致性

2024-11-07 22:57:30

2019-03-27 13:56:39

緩存雪崩穿透

2019-02-13 11:04:42

系統(tǒng)緩存軟件

2020-09-04 06:32:08

緩存數(shù)據(jù)庫接口

2023-08-01 07:42:33

Redis數(shù)據(jù)項(xiàng)目

2022-05-31 08:37:59

RedisMySQL數(shù)據(jù)一致性

2016-11-29 09:00:19

分布式數(shù)據(jù)一致性CAS

2022-08-11 07:55:05

數(shù)據(jù)庫Mysql

2021-09-08 11:03:13

緩存數(shù)據(jù)庫性能

2025-06-16 02:11:00

2023-09-24 14:35:43

Redis數(shù)據(jù)庫

2022-12-14 08:23:30

2021-02-05 08:00:48

哈希算法?機(jī)器

2024-05-28 00:50:00

RedisMySQL緩存

2025-03-10 09:20:00

庫存異常Redis架構(gòu)

2021-06-30 21:13:49

CPUCache數(shù)據(jù)
點(diǎn)贊
收藏

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

久久久精品综合| 五月天免费网站| 久久久久久国产精品视频| 国产亚洲成av人片在线观看| 免费成人结看片| 中文字幕日韩一区二区| 欧美激情久久久| 秋霞在线观看一区二区三区| 内射一区二区三区| 日韩精选视频| 白白色亚洲国产精品| 精品国内亚洲在观看18黄| 青青艹视频在线| 国产福利第一页| 成人女性视频| 欧美性猛交xxxx免费看| 97久久精品午夜一区二区| 四虎国产精品成人免费入口| 久久香蕉av| 卡一卡二国产精品 | 激情伊人五月天| 一级片一区二区三区| 一本色道久久综合亚洲精品酒店 | 日韩中文字幕亚洲精品欧美| 人人妻人人爽人人澡人人精品| 一区三区自拍| 亚洲女同一区二区| 国产免费亚洲高清| 在线看片中文字幕| 亚洲一区二区三区免费看| 野花社区视频在线观看| 日本不卡在线| 日韩av在线免费观看不卡| 欧美性生活大片免费观看网址| 亚洲精品一区国产精品| 无码人妻黑人中文字幕| 日韩精品导航| 高潮白浆女日韩av免费看| 国产经品一区二区| 久久精品女人毛片国产| 白嫩白嫩国产精品| 亚洲国产日日夜夜| 国产一级二级三级精品| 欧美一级特黄视频| 九色精品国产蝌蚪| 亚洲国产成人精品久久| 男女猛烈激情xx00免费视频| 少妇高潮一区二区三区99小说| 欧美高清视频手机在在线| 欧美私模裸体表演在线观看| 日本精品一区| 天堂a中文在线| 亚洲欧美视频| 国产午夜精品视频免费不卡69堂| 日韩大陆毛片av| 国产男人搡女人免费视频| 日本www在线视频| 精品人妻一区二区三区含羞草| 国产精品毛片久久| 欧美一级二级三级蜜桃| 超薄肉色丝袜足j调教99| 国产福利在线看| 蜜桃一区二区三区在线观看| 久久国产精品久久精品| 交换做爰国语对白| 青春草在线视频| 亚洲另类中文字| 日本不卡一区二区三区四区| 亚洲精品人妻无码| 麻豆9191精品国产| 久久手机精品视频| 中文字幕永久免费| 日韩精品av| 国产精品乱码人人做人人爱| 91pron在线| 国产高清视频免费观看| 国产成人免费网站| 欧美孕妇与黑人孕交| 超碰人人干人人| 日韩一区二区在线| 日韩av网站大全| 亚洲天堂网一区二区| 自拍偷拍一区| 亚洲最新av在线网站| 亚洲无人区码一码二码三码| 精品日本视频| 亚洲午夜精品网| 亚洲欧洲日韩综合二区| 免费黄网站在线播放| 一区二区三区波多野结衣在线观看| 欧美日韩一区二区视频在线| www.超碰在线.com| 成人激情视频网站| 91社区国产高清| 国产精品免费无遮挡无码永久视频| 久久狠狠婷婷| 成人有码视频在线播放| 亚洲精品中文字幕乱码三区91| 伊人久久大香线| 亚洲国产古装精品网站| 国产夫妻性爱视频| 婷婷伊人综合| 8x拔播拔播x8国产精品| 久草视频免费在线播放| 日韩av大片| 欧美激情精品久久久| 无码人妻丰满熟妇奶水区码| 国产精品18久久久久久久网站| 久久久婷婷一区二区三区不卡| 亚洲第一黄色片| 91麻豆国产福利在线观看| 国产传媒欧美日韩| 国产视频二区在线观看| 亚洲综合色网站| 手机在线看福利| 亚洲天堂一区二区| 欧美日韩亚洲系列| 黄色一级片免费播放| 亚洲精品第一| 亚洲mv在线观看| 黄页网站大全在线观看| 韩国精品视频在线观看| 欧美日韩国产高清一区二区| 欧美少妇性生活视频| 欧美aa在线| 91精品国产综合久久久久久漫画| 久久99爱视频| 精品久久福利| 日韩成人黄色av| 青青草在线观看视频| 琪琪一区二区三区| 欧美日韩精品久久| 理论片午夜视频在线观看| 制服丝袜一区二区三区| 久久久免费看片| 日韩国产在线观看一区| 免费精品视频一区二区三区| 欧美色图另类| 久久精品欧美日韩精品 | 久久爱.com| 亚洲欧美国产高清va在线播| 国产手机在线观看| 精品国产乱码久久久| 综合136福利视频在线| 搜索黄色一级片| 日韩综合一区二区| 欧美成人dvd在线视频| av在线中出| 欧美性videos高清精品| 欧美xxxxx少妇| 伊人久久大香线蕉综合网站| 欧美激情视频一区二区三区不卡| 在线视频 91| 国产精品亚洲一区二区三区在线| 国产高清在线一区| 福利成人导航| 欧美性大战久久久久久久| 亚洲av无码成人精品国产| 欧美在线电影| 国产精品高清在线| 国产jzjzjz丝袜老师水多| 中文字幕一区二区三区不卡在线| www.xxx麻豆| av日韩电影| 51精品秘密在线观看| 国产又色又爽又高潮免费| 久久久久久影院| 欧美精品激情blacked18| 99超碰在线观看| 久久尤物电影视频在线观看| 欧美精品一区二区性色a+v| 嗯啊主人调教在线播放视频| 亚洲国内精品在线| 国产aaaaaaaaa| 99精品国产福利在线观看免费| 国产精品三级美女白浆呻吟| 免费看黄网站在线观看| 国产精品久久久久毛片软件| 色噜噜狠狠永久免费| 亚洲午夜精品一区 二区 三区| 91丝袜脚交足在线播放| 成人国产电影在线观看| 亚洲欧美精品一区二区| 一级黄色大片免费观看| 亚洲精品国产a久久久久久| 激情综合网俺也去| 澳门久久精品| 日韩av色在线| 天天综合网天天综合| 欧美性猛交xxxx免费看久久久| 成人一级片免费看| 高清在线观看日韩| 在线观看成人av电影| 高清不卡亚洲| 精品国产欧美成人夜夜嗨| 日韩无码精品一区二区三区| 国内成人免费视频| 日韩国产美国| av剧情在线观看| 在线观看国产欧美| 蜜臀久久99精品久久久| 欧美性猛交xxxxxxxx| 九热这里只有精品| 国产精品麻豆一区二区| 污污污www精品国产网站| 韩国欧美一区| 成人性教育视频在线观看| 精精国产xxxx视频在线野外| www.日韩免费| 美州a亚洲一视本频v色道| 91精品国产91综合久久蜜臀| 少妇太紧太爽又黄又硬又爽小说| 国产精品亚洲人在线观看| 能看的毛片网站| 99精品国产福利在线观看免费| 熟妇熟女乱妇乱女网站| 欧美日中文字幕| 国精产品99永久一区一区| 精品麻豆剧传媒av国产九九九| 中文字幕久久精品| 午夜一区在线观看| 亚洲福利视频一区二区| 99自拍偷拍视频| 久久亚洲一级片| 亚洲啪av永久无码精品放毛片| 狠狠色丁香久久婷婷综合丁香| 男女午夜激情视频| 国内成人自拍| 国产日韩在线观看av| 久久精品视频免费看| 制服丝袜日韩国产| 日韩不卡高清视频| 欧美小视频在线| 免费av网站在线| 天天影视色香欲综合网老头| 少妇大叫太粗太大爽一区二区| 国产激情一区二区三区四区 | 一区二区三区免费看| 要久久电视剧全集免费| 蜜桃av噜噜一区二区三| 久久99精品国产自在现线| 国模精品视频一区二区三区| 国产伦理吴梦梦伦理| 国产午夜亚洲精品理论片色戒| 亚洲中文字幕无码一区| 成人的网站免费观看| 中文在线字幕观看| 国产成人亚洲精品狼色在线| 91欧美一区二区三区| 免费欧美日韩国产三级电影| 情侣黄网站免费看| 久久一区二区三区四区五区| 亚洲欧美精品| 日韩精品久久| 中文字幕乱码一区二区三区| 日韩av在线播放网址| 一区不卡视频| 一区二区三区四区日韩| 一二三四中文字幕| 韩日视频一区| 欧美,日韩,国产在线| 美日韩精品视频| 91淫黄看大片| 久久精品卡一| 黄色永久免费网站| 国产美女主播视频一区| 日本网站免费在线观看| 美女国产精品| 污网站免费在线| 亚洲久久一区二区| 一区精品视频| 亚洲精品二区三区| a级黄色小视频| 免费看的黄色欧美网站| 国产wwwxx| 国产激情精品久久久第一区二区| 黄色av电影网站| 久久色中文字幕| 欧美视频一区二区在线| 亚洲一区二区三区免费视频| 999这里只有精品| 一区二区三区四区在线免费观看| 免费在线视频观看| 欧美午夜电影在线| 一区二区三区精彩视频| 欧美成人video| 在线亚洲欧美日韩| 日韩欧美在线综合网| 亚洲 国产 欧美 日韩| 最新国产成人av网站网址麻豆| 亚洲欧美日韩动漫| 尤物99国产成人精品视频| 最爽无遮挡行房视频在线| 这里精品视频免费| 26uuu亚洲电影在线观看| 97超碰色婷婷| 成人动漫视频在线观看| 国产99久久精品一区二区 夜夜躁日日躁 | 日本一区二区三区dvd视频在线| 亚洲成人精品在线播放| 91蜜桃在线免费视频| 暗呦丨小u女国产精品| 亚洲成人久久影院| 91成人国产综合久久精品| 亚洲国内精品视频| 伊人福利在线| 国产精品一香蕉国产线看观看| julia中文字幕一区二区99在线| 日韩福利视频| 亚洲高清资源| 成人av在线不卡| 欧美久久99| 黄色一级片黄色| 奇米色一区二区三区四区| 成人午夜精品无码区| 亚洲天堂久久久久久久| 丁香花五月激情| 中文字幕一区av| 亚洲精品国产精品乱码| 欧美一区二区三区不卡| eeuss影院www在线播放| 一区二区三区天堂av| 2020日本在线视频中文字幕| 成人免费视频a| 欧美日韩在线播放视频| 国产精品免费入口| 久久一本综合频道| 污污污www精品国产网站| 一区二区三区美女视频| 国产乱叫456在线| 少妇精69xxtheporn| 羞羞影院欧美| 欧美日韩亚洲一区二区三区在线观看| 一区免费视频| 亚洲自拍偷拍精品| 亚洲在线观看免费视频| 精品国产av鲁一鲁一区| 久久天天躁狠狠躁夜夜爽蜜月| 视频精品导航| 亚洲v国产v在线观看| 成人影视亚洲图片在线| 国产在线观看福利| 91偷拍与自偷拍精品| 亚洲精品77777| 亚洲国产另类久久精品| 国产美女高潮在线观看| 国产精品综合久久久久久| 国产欧美日韩精品一区二区三区 | 国产精品综合久久| 少妇人妻丰满做爰xxx| 91精品国产综合久久久久| 欧美三级黄网| 91在线观看免费高清完整版在线观看 | 国产免费无码一区二区视频| 亚洲国产精品久久久久秋霞影院 | 我爱我色成人网| 欧美二区三区在线| 日韩精品三区四区| 一区二区三区在线观看免费视频| 亚洲靠逼com| 国产后入清纯学生妹| 久久久久久午夜| 欧美精品中文字幕亚洲专区| 在线国产伦理一区| 精品一区二区三区在线播放| 中文字幕无码人妻少妇免费| 亚洲午夜精品在线| 日本大片在线观看| 欧美成人亚洲成人| 亚洲高清999| 深田咏美在线x99av| 日韩电影免费在线观看网站| 大胸美女被爆操| 日韩视频在线永久播放| 51精品在线| 亚洲国产精品视频一区| 国产一区二区成人久久免费影院 | 欧美精品麻豆| 国产精品无码在线| 日韩一区在线看| 亚洲第一精品网站| 日本国产一区二区三区| 久久久久久久久久久久电影| 国产精品国三级国产av| 91麻豆123| 国产精品国产三级国产普通话对白| 久久久久久久久综合| 国产精品日韩精品中文字幕| 在线观看免费视频高清游戏推荐| 亚洲自拍欧美精品| 黄色av网址在线免费观看| 欧美亚洲成人xxx| 色婷婷亚洲mv天堂mv在影片| 国产a√精品区二区三区四区| 日韩欧美中文字幕在线观看| a天堂视频在线| 欧美最近摘花xxxx摘花| 国产精品久久久久久久久久10秀| 中国特级黄色大片| 555夜色666亚洲国产免|