日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

redis 分布式锁的 5个坑,真是又大又深

發布時間:2025/3/16 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 redis 分布式锁的 5个坑,真是又大又深 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

引言

最近項目上線的頻率頗高,連著幾天加班熬夜,身體有點吃不消精神也有些萎靡,無奈業務方催的緊,工期就在眼前只能硬著頭皮上了。腦子渾渾噩噩的時候,寫的就不能叫代碼,可以直接叫做Bug。我就熬夜寫了一個bug被罵慘了。

由于是做商城業務,要頻繁的對商品庫存進行扣減,應用是集群部署,為避免并發造成庫存超買超賣等問題,采用?redis?分布式鎖加以控制。本以為給扣庫存的代碼加上鎖lock.tryLock就萬事大吉了

1????/**2?????*?@author?xiaofu3?????*?@description?扣減庫存4?????*?@date?2020/4/21?12:105?????*/6???public?String?stockLock()?{7????????RLock?lock?=?redissonClient.getLock("stockLock");8????????try?{9????????????/** 10?????????????*?獲取鎖 11?????????????*/ 12????????????if?(lock.tryLock(10,?TimeUnit.SECONDS))?{ 13????????????????/** 14?????????????????*?查詢庫存數 15?????????????????*/ 16????????????????Integer?stock?=?Integer.valueOf(stringRedisTemplate.opsForValue().get("stockCount")); 17????????????????/** 18?????????????????*?扣減庫存 19?????????????????*/ 20????????????????if?(stock?>?0)?{ 21????????????????????stock?=?stock?-?1; 22????????????????????stringRedisTemplate.opsForValue().set("stockCount",?stock.toString()); 23????????????????????LOGGER.info("庫存扣減成功,剩余庫存數量:{}",?stock); 24????????????????}?else?{ 25????????????????????LOGGER.info("庫存不足~"); 26????????????????} 27????????????}?else?{ 28????????????????LOGGER.info("未獲取到鎖業務結束.."); 29????????????} 30????????}?catch?(Exception?e)?{ 31????????????LOGGER.info("處理異常",?e); 32????????}?finally?{ 33????????????lock.unlock(); 34????????} 35????????return?"ok"; 36??}

結果業務代碼執行完以后我忘了釋放鎖lock.unlock(),導致redis線程池被打滿,redis服務大面積故障,造成庫存數據扣減混亂,被領導一頓臭罵,這個月績效~ 哎·~。

隨著 使用redis?鎖的時間越長,我發現?redis?鎖的坑遠比想象中要多。就算在面試題當中redis分布式鎖的出鏡率也比較高,比如:“用鎖遇到過哪些問題?” ,“又是如何解決的?” 基本都是一套連招問出來的。

今天就分享一下我用redis?分布式鎖的踩坑日記,以及一些解決方案,和大家一起共勉。

一、鎖未被釋放

這種情況是一種低級錯誤,就是我上邊犯的錯,由于當前線程 獲取到redis?鎖,處理完業務后未及時釋放鎖,導致其它線程會一直嘗試獲取鎖阻塞,例如:用Jedis客戶端會報如下的錯誤信息

1redis.clients.jedis.exceptions.JedisConnectionException:?Could?not?get?a?resource?from?the?pool

redis線程池已經沒有空閑線程來處理客戶端命令。

解決的方法也很簡單,只要我們細心一點,拿到鎖的線程處理完業務及時釋放鎖,如果是重入鎖未拿到鎖后,線程可以釋放當前連接并且sleep一段時間。

1??public?void?lock()?{2??????while?(true)?{3??????????boolean?flag?=?this.getLock(key);4??????????if?(flag)?{5????????????????TODO?.........6??????????}?else?{7????????????????//?釋放當前redis連接8????????????????redis.close();9????????????????//?休眠1000毫秒 10????????????????sleep(1000); 11??????????} 12????????} 13????}

二、B的鎖被A給釋放了

我們知道Redis實現鎖的原理在于?SETNX命令。當?key不存在時將?key的值設為?value?,返回值為?1;若給定的?key已經存在,則?SETNX不做任何動作,返回值為?0?。

1SETNX?key?value

我們來設想一下這個場景:A、B兩個線程來嘗試給key?myLock加鎖,A線程先拿到鎖(假如鎖3秒后過期),B線程就在等待嘗試獲取鎖,到這一點毛病沒有。

那如果此時業務邏輯比較耗時,執行時間已經超過redis鎖過期時間,這時A線程的鎖自動釋放(刪除key),B線程檢測到myLock這個key不存在,執行?SETNX命令也拿到了鎖。

但是,此時A線程執行完業務邏輯之后,還是會去釋放鎖(刪除key),這就導致B線程的鎖被A線程給釋放了。

為避免上邊的情況,一般我們在每個線程加鎖時要帶上自己獨有的value值來標識,只釋放指定value的key,否則就會出現釋放鎖混亂的場景。

三、數據庫事務超時

emm~ 聊redis鎖咋還扯到數據庫事務上來了?別著急往下看,看下邊這段代碼:

1???@Transaction2???public?void?lock()?{34????????while?(true)?{5????????????boolean?flag?=?this.getLock(key);6????????????if?(flag)?{7????????????????insert();8????????????}9????????} 10????}

給這個方法添加一個@Transaction注解開啟事務,如代碼中拋出異常進行回滾,要知道數據庫事務可是有超時時間限制的,并不會無條件的一直等一個耗時的數據庫操作。

比如:我們解析一個大文件,再將數據存入到數據庫,如果執行時間太長,就會導致事務超時自動回滾。

一旦你的key長時間獲取不到鎖,獲取鎖等待的時間遠超過數據庫事務超時時間,程序就會報異常。

一般為解決這種問題,我們就需要將數據庫事務改為手動提交、回滾事務。

1????@Autowired2????DataSourceTransactionManager?dataSourceTransactionManager;34????@Transaction5????public?void?lock()?{6????????//手動開啟事務7????????TransactionStatus?transactionStatus?=?dataSourceTransactionManager.getTransaction(transactionDefinition);8????????try?{9????????????while?(true)?{ 10????????????????boolean?flag?=?this.getLock(key); 11????????????????if?(flag)?{ 12????????????????????insert(); 13????????????????????//手動提交事務 14????????????????????dataSourceTransactionManager.commit(transactionStatus); 15????????????????} 16????????????} 17????????}?catch?(Exception?e)?{ 18????????????//手動回滾事務 19????????????dataSourceTransactionManager.rollback(transactionStatus); 20????????} 21????}

四、鎖過期了,業務還沒執行完

這種情況和我們上邊提到的第二種比較類似,但解決思路上略有不同。

同樣是redis分布式鎖過期,而業務邏輯沒執行完的場景,不過,這里換一種思路想問題,redis鎖的過期時間再弄長點不就解決了嗎?

那還是有問題,我們可以在加鎖的時候,手動調長redis鎖的過期時間,可這個時間多長合適?業務邏輯的執行時間是不可控的,調的過長又會影響操作性能。

要是redis鎖的過期時間能夠自動續期就好了。

為了解決這個問題我們使用redis客戶端redisson,redisson很好的解決了redis在分布式環境下的一些棘手問題,它的宗旨就是讓使用者減少對Redis的關注,將更多精力用在處理業務邏輯上。

redisson對分布式鎖做了很好封裝,只需調用API即可。

1??RLock?lock?=?redissonClient.getLock("stockLock");

redisson在加鎖成功后,會注冊一個定時任務監聽這個鎖,每隔10秒就去查看這個鎖,如果還持有鎖,就對過期時間進行續期。默認過期時間30秒。這個機制也被叫做:“看門狗”,這名字。。。

舉例子:假如加鎖的時間是30秒,過10秒檢查一次,一旦加鎖的業務沒有執行完,就會進行一次續期,把鎖的過期時間再次重置成30秒。

通過分析下邊redisson的源碼實現可以發現,不管是加鎖、解鎖、續約都是客戶端把一些復雜的業務邏輯,通過封裝在Lua腳本中發送給redis,保證這段復雜業務邏輯執行的原子性。

1@Slf4j2@Service3public?class?RedisDistributionLockPlus?{45????/**6?????*?加鎖超時時間,單位毫秒,?即:加鎖時間內執行完操作,如果未完成會有并發現象7?????*/8????private?static?final?long?DEFAULT_LOCK_TIMEOUT?=?30;910????private?static?final?long?TIME_SECONDS_FIVE?=?5?;1112????/**13?????*?每個key的過期時間?{@link?LockContent}14?????*/15????private?Map<String,?LockContent>?lockContentMap?=?new?ConcurrentHashMap<>(512);1617????/**18?????*?redis執行成功的返回19?????*/20????private?static?final?Long?EXEC_SUCCESS?=?1L;2122????/**23?????*?獲取鎖lua腳本, k1:獲鎖key, k2:續約耗時key, arg1:requestId,arg2:超時時間24?????*/25????private?static?final?String?LOCK_SCRIPT?=?"if?redis.call('exists',?KEYS[2])?==?1?then?ARGV[2]?=?math.floor(redis.call('get',?KEYS[2])?+?10)?end?"?+26????????????"if?redis.call('exists',?KEYS[1])?==?0?then?"?+27???????????????"local?t?=?redis.call('set',?KEYS[1],?ARGV[1],?'EX',?ARGV[2])?"?+28???????????????"for?k,?v?in?pairs(t)?do?"?+29?????????????????"if?v?==?'OK'?then?return?tonumber(ARGV[2])?end?"?+30???????????????"end?"?+31????????????"return?0?end";3233????/**34?????*?釋放鎖lua腳本, k1:獲鎖key, k2:續約耗時key, arg1:requestId,arg2:業務耗時 arg3:?業務開始設置的timeout35?????*/36????private?static?final?String?UNLOCK_SCRIPT?=?"if?redis.call('get',?KEYS[1])?==?ARGV[1]?then?"?+37????????????"local?ctime?=?tonumber(ARGV[2])?"?+38????????????"local?biz_timeout?=?tonumber(ARGV[3])?"?+39????????????"if?ctime?>?0?then??"?+40???????????????"if?redis.call('exists',?KEYS[2])?==?1?then?"?+41???????????????????"local?avg_time?=?redis.call('get',?KEYS[2])?"?+42???????????????????"avg_time?=?(tonumber(avg_time)?*?8?+?ctime?*?2)/10?"?+43???????????????????"if?avg_time?>=?biz_timeout?-?5?then?redis.call('set',?KEYS[2],?avg_time,?'EX',?24*60*60)?"?+44???????????????????"else?redis.call('del',?KEYS[2])?end?"?+45???????????????"elseif?ctime?>?biz_timeout?-5?then?redis.call('set',?KEYS[2],?ARGV[2],?'EX',?24*60*60)?end?"?+46????????????"end?"?+47????????????"return?redis.call('del',?KEYS[1])?"?+48????????????"else?return?0?end";49????/**50?????*?續約lua腳本51?????*/52????private?static?final?String?RENEW_SCRIPT?=?"if?redis.call('get',?KEYS[1])?==?ARGV[1]?then?return?redis.call('expire',?KEYS[1],?ARGV[2])?else?return?0?end";535455????private?final?StringRedisTemplate?redisTemplate;5657????public?RedisDistributionLockPlus(StringRedisTemplate?redisTemplate)?{58????????this.redisTemplate?=?redisTemplate;59????????ScheduleTask?task?=?new?ScheduleTask(this,?lockContentMap);60????????//?啟動定時任務61????????ScheduleExecutor.schedule(task,?1,?1,?TimeUnit.SECONDS);62????}6364????/**65?????*?加鎖66?????*?取到鎖加鎖,取不到鎖一直等待知道獲得鎖67?????*68?????*?@param?lockKey69?????*?@param?requestId?全局唯一70?????*?@param?expire???鎖過期時間,?單位秒71?????*?@return72?????*/73????public?boolean?lock(String?lockKey,?String?requestId,?long?expire)?{74????????log.info("開始執行加鎖,?lockKey?={},?requestId={}",?lockKey,?requestId);75????????for?(;?;?)?{76????????????//?判斷是否已經有線程持有鎖,減少redis的壓力77????????????LockContent?lockContentOld?=?lockContentMap.get(lockKey);78????????????boolean?unLocked?=?null?==?lockContentOld;79????????????//?如果沒有被鎖,就獲取鎖80????????????if?(unLocked)?{81????????????????long?startTime?=?System.currentTimeMillis();82????????????????//?計算超時時間83????????????????long?bizExpire?=?expire?==?0L???DEFAULT_LOCK_TIMEOUT?:?expire;84????????????????String?lockKeyRenew?=?lockKey?+?"_renew";8586????????????????RedisScript<Long>?script?=?RedisScript.of(LOCK_SCRIPT,?Long.class);87????????????????List<String>?keys?=?new?ArrayList<>();88????????????????keys.add(lockKey);89????????????????keys.add(lockKeyRenew);90????????????????Long?lockExpire?=?redisTemplate.execute(script,?keys,?requestId,?Long.toString(bizExpire));91????????????????if?(null?!=?lockExpire?&&?lockExpire?>?0)?{92????????????????????//?將鎖放入map93????????????????????LockContent?lockContent?=?new?LockContent();94????????????????????lockContent.setStartTime(startTime);95????????????????????lockContent.setLockExpire(lockExpire);96????????????????????lockContent.setExpireTime(startTime?+?lockExpire?*?1000);97????????????????????lockContent.setRequestId(requestId);98????????????????????lockContent.setThread(Thread.currentThread());99????????????????????lockContent.setBizExpire(bizExpire); 100????????????????????lockContent.setLockCount(1); 101????????????????????lockContentMap.put(lockKey,?lockContent); 102????????????????????log.info("加鎖成功,?lockKey?={},?requestId={}",?lockKey,?requestId); 103????????????????????return?true; 104????????????????} 105????????????} 106????????????//?重復獲取鎖,在線程池中由于線程復用,線程相等并不能確定是該線程的鎖 107????????????if?(Thread.currentThread()?==?lockContentOld.getThread() 108??????????????????????&&?requestId.equals(lockContentOld.getRequestId())){ 109????????????????//?計數?+1 110????????????????lockContentOld.setLockCount(lockContentOld.getLockCount()+1); 111????????????????return?true; 112????????????} 113 114????????????//?如果被鎖或獲取鎖失敗,則等待100毫秒 115????????????try?{ 116????????????????TimeUnit.MILLISECONDS.sleep(100); 117????????????}?catch?(InterruptedException?e)?{ 118????????????????//?這里用lombok?有問題 119????????????????log.error("獲取redis?鎖失敗,?lockKey?={},?requestId={}",?lockKey,?requestId,?e); 120????????????????return?false; 121????????????} 122????????} 123????} 124 125 126????/** 127?????*?解鎖 128?????* 129?????*?@param?lockKey 130?????*?@param?lockValue 131?????*/ 132????public?boolean?unlock(String?lockKey,?String?lockValue)?{ 133????????String?lockKeyRenew?=?lockKey?+?"_renew"; 134????????LockContent?lockContent?=?lockContentMap.get(lockKey); 135 136????????long?consumeTime; 137????????if?(null?==?lockContent)?{ 138????????????consumeTime?=?0L; 139????????}?else?if?(lockValue.equals(lockContent.getRequestId()))?{ 140????????????int?lockCount?=?lockContent.getLockCount(); 141????????????//?每次釋放鎖,?計數?-1,減到0時刪除redis上的key 142????????????if?(--lockCount?>?0)?{ 143????????????????lockContent.setLockCount(lockCount); 144????????????????return?false; 145????????????} 146????????????consumeTime?=?(System.currentTimeMillis()?-?lockContent.getStartTime())?/?1000; 147????????}?else?{ 148????????????log.info("釋放鎖失敗,不是自己的鎖。"); 149????????????return?false; 150????????} 151 152????????//?刪除已完成key,先刪除本地緩存,減少redis壓力,?分布式鎖,只有一個,所以這里不加鎖 153????????lockContentMap.remove(lockKey); 154 155????????RedisScript<Long>?script?=?RedisScript.of(UNLOCK_SCRIPT,?Long.class); 156????????List<String>?keys?=?new?ArrayList<>(); 157????????keys.add(lockKey); 158????????keys.add(lockKeyRenew); 159 160????????Long?result?=?redisTemplate.execute(script,?keys,?lockValue,?Long.toString(consumeTime), 161????????????????Long.toString(lockContent.getBizExpire())); 162????????return?EXEC_SUCCESS.equals(result); 163 164????} 165 166????/** 167?????*?續約 168?????* 169?????*?@param?lockKey 170?????*?@param?lockContent 171?????*?@return?true:續約成功,false:續約失敗(1、續約期間執行完成,鎖被釋放?2、不是自己的鎖,3、續約期間鎖過期了(未解決)) 172?????*/ 173????public?boolean?renew(String?lockKey,?LockContent?lockContent)?{ 174 175????????//?檢測執行業務線程的狀態 176????????Thread.State?state?=?lockContent.getThread().getState(); 177????????if?(Thread.State.TERMINATED?==?state)?{ 178????????????log.info("執行業務的線程已終止,不再續約?lockKey?={},?lockContent={}",?lockKey,?lockContent); 179????????????return?false; 180????????} 181 182????????String?requestId?=?lockContent.getRequestId(); 183????????long?timeOut?=?(lockContent.getExpireTime()?-?lockContent.getStartTime())?/?1000; 184 185????????RedisScript<Long>?script?=?RedisScript.of(RENEW_SCRIPT,?Long.class); 186????????List<String>?keys?=?new?ArrayList<>(); 187????????keys.add(lockKey); 188 189????????Long?result?=?redisTemplate.execute(script,?keys,?requestId,?Long.toString(timeOut)); 190????????log.info("續約結果,True成功,False失敗?lockKey?={},?result={}",?lockKey,?EXEC_SUCCESS.equals(result)); 191????????return?EXEC_SUCCESS.equals(result); 192????} 193 194 195????static?class?ScheduleExecutor?{ 196 197????????public?static?void?schedule(ScheduleTask?task,?long?initialDelay,?long?period,?TimeUnit?unit)?{ 198????????????long?delay?=?unit.toMillis(initialDelay); 199????????????long?period_?=?unit.toMillis(period); 200????????????//?定時執行 201????????????new?Timer("Lock-Renew-Task").schedule(task,?delay,?period_); 202????????} 203????} 204 205????static?class?ScheduleTask?extends?TimerTask?{ 206 207????????private?final?RedisDistributionLockPlus?redisDistributionLock; 208????????private?final?Map<String,?LockContent>?lockContentMap; 209 210????????public?ScheduleTask(RedisDistributionLockPlus?redisDistributionLock,?Map<String,?LockContent>?lockContentMap)?{ 211????????????this.redisDistributionLock?=?redisDistributionLock; 212????????????this.lockContentMap?=?lockContentMap; 213????????} 214 215????????@Override 216????????public?void?run()?{ 217????????????if?(lockContentMap.isEmpty())?{ 218????????????????return; 219????????????} 220????????????Set<Map.Entry<String,?LockContent>>?entries?=?lockContentMap.entrySet(); 221????????????for?(Map.Entry<String,?LockContent>?entry?:?entries)?{ 222????????????????String?lockKey?=?entry.getKey(); 223????????????????LockContent?lockContent?=?entry.getValue(); 224????????????????long?expireTime?=?lockContent.getExpireTime(); 225????????????????//?減少線程池中任務數量 226????????????????if?((expireTime?-?System.currentTimeMillis())/?1000?<?TIME_SECONDS_FIVE)?{ 227????????????????????//線程池異步續約 228????????????????????ThreadPool.submit(()?->?{ 229????????????????????????boolean?renew?=?redisDistributionLock.renew(lockKey,?lockContent); 230????????????????????????if?(renew)?{ 231????????????????????????????long?expireTimeNew?=?lockContent.getStartTime()?+?(expireTime?-?lockContent.getStartTime())?*?2?-?TIME_SECONDS_FIVE?*?1000; 232????????????????????????????lockContent.setExpireTime(expireTimeNew); 233????????????????????????}?else?{ 234????????????????????????????//?續約失敗,說明已經執行完?OR?redis?出現問題 235????????????????????????????lockContentMap.remove(lockKey); 236????????????????????????} 237????????????????????}); 238????????????????} 239????????????} 240????????} 241????} 242}

五、redis主從復制的坑

redis高可用最常見的方案就是主從復制(master-slave),這種模式也給redis分布式鎖挖了一坑。

redis cluster集群環境下,假如現在A客戶端想要加鎖,它會根據路由規則選擇一臺master節點寫入key?mylock,在加鎖成功后,master節點會把key異步復制給對應的slave節點。

如果此時redis master節點宕機,為保證集群可用性,會進行主備切換,slave變為了redis master。B客戶端在新的master節點上加鎖成功,而A客戶端也以為自己還是成功加了鎖的。

此時就會導致同一時間內多個客戶端對一個分布式鎖完成了加鎖,導致各種臟數據的產生。

至于解決辦法嘛,目前看還沒有什么根治的方法,只能盡量保證機器的穩定性,減少發生此事件的概率。

總結

上面就是我在使用Redis?分布式鎖時遇到的一些坑,有點小感慨,經常用一個方法填上這個坑,沒多久就發現另一個坑又出來了,其實根本沒有什么十全十美的解決方案,哪有什么銀彈,只不過是在權衡利弊后,選一個在接受范圍內的折中方案而已。

有道無術,術可成;有術無道,止于術

歡迎大家關注Java之道公眾號

好文章,我在看??

新人創作打卡挑戰賽發博客就能抽獎!定制產品紅包拿不停!

總結

以上是生活随笔為你收集整理的redis 分布式锁的 5个坑,真是又大又深的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

aaawww| 美女一二三区 | 中文字幕在线影视资源 | 欧美激情综合五月色丁香 | 国产视频在线一区二区 | 久久精品国产99国产 | 最近日本韩国中文字幕 | 国产毛片久久 | 久久九九国产视频 | 欧美精品一区二区性色 | 顶级bbw搡bbbb搡bbbb | 国产精品久久久久久久久久 | 国产美女黄网站免费 | 欧美国产精品一区二区 | 久久精品视频网 | 在线免费观看黄色大片 | 97色综合 | 九九影视理伦片 | 国产精品成人a免费观看 | 在线观看理论 | 韩日精品视频 | 女人18毛片a级毛片一区二区 | 天天做天天爱夜夜爽 | 国产在线久久久 | 色婷婷丁香 | 亚洲精品视频在线观看免费视频 | 国产精品九九九 | 久久免费视频1 | 福利av影院| 丁香六月网 | 激情综合网天天干 | 日韩成人免费在线电影 | 日韩av影片在线观看 | 亚洲国产精品99久久久久久久久 | 久久综合五月天 | 国产午夜在线观看 | 色.www| 四虎最新入口 | 免费在线观看不卡av | 91av成人| 欧美成人按摩 | 国产手机av在线 | 国产又粗又猛又色又黄网站 | 中文字幕av一区二区三区四区 | 五月婷婷黄色 | 国产午夜剧场 | 国产视频一二三 | 国产精品久久一区二区三区不卡 | 超碰人人国产 | 国产精品一区二区精品视频免费看 | 久久精品99久久久久久 | 在线免费观看成人 | 成 人 免费 黄 色 视频 | 日日干天天干 | 色婷婷亚洲 | 成人在线视频免费观看 | 天天操天天操天天操天天操天天操天天操 | 精品国产aⅴ麻豆 | 亚洲一级性 | 在线中文字母电影观看 | 国产日产精品一区二区三区四区的观看方式 | 91香蕉视频好色先生 | 美女在线观看av | 久久国产成人午夜av影院宅 | 亚洲成人家庭影院 | 婷婷播播网 | 欧美另类性 | 日韩影视在线观看 | 亚洲精品久久久久中文字幕二区 | 国产一区二区在线免费播放 | 久久天天躁夜夜躁狠狠85麻豆 | 亚洲欧美一区二区三区孕妇写真 | 韩国一区二区在线观看 | 欧美日韩一区二区在线 | 久久亚洲私人国产精品va | 91在线视频免费 | 国产爽妇网 | 五月婷婷激情六月 | 亚洲一区二区三区在线看 | 香蕉久久久久 | 亚洲成熟女人毛片在线 | 99久久婷婷国产一区二区三区 | 日韩一二区在线观看 | 欧美一级大片在线观看 | 久久久亚洲精华液 | 久久久www成人免费毛片麻豆 | 国产精品一区二区麻豆 | 亚洲天堂网在线观看视频 | 久久久久久久久久福利 | 婷婷丁香激情 | 欧美在线视频不卡 | 九九热久久免费视频 | 免费在线一区二区 | 香蕉手机在线 | 丝袜网站在线观看 | 国产麻豆成人传媒免费观看 | 成人性生爱a∨ | 成人精品影视 | 亚洲乱码中文字幕综合 | 天天操夜夜看 | 天天色天天操天天爽 | 播五月婷婷 | 99在线高清视频在线播放 | 欧美性生活一级片 | 在线中文字幕电影 | 激情丁香| 亚洲影院一区 | 91麻豆精品国产 | 狠狠综合久久av | 96精品高清视频在线观看软件特色 | 99精品偷拍视频一区二区三区 | 日韩乱色精品一区二区 | 日日夜夜噜噜噜 | 不卡的av电影 | 在线视频99 | 在线观看视频你懂得 | 二区视频在线观看 | 欧美日韩国产一区二区三区 | 国产精品www | 天堂av在线网站 | 青青五月天 | 国产精品久久电影观看 | 一区二区三区av在线 | 亚洲无人区小视频 | 亚洲激情免费 | 精品国产一区二区三区av性色 | 中文字幕丰满人伦在线 | 一区av在线播放 | www夜夜操com| 97在线观看免费 | 欧美性高跟鞋xxxxhd | 在线免费成人 | 五月婷婷综合久久 | 黄视频网站大全 | 亚洲精品国产拍在线 | 91最新视频在线观看 | 久草视频在线播放 | 四虎在线视频免费观看 | 中文字幕网址 | 丝袜美女在线 | 成人高清在线 | 日韩一区二区免费播放 | 免费在线观看国产黄 | 欧美日韩一区二区在线 | 久久天天躁狠狠躁夜夜不卡公司 | 四虎国产精品免费 | 日本精品一区二区在线观看 | 久草视频在线资源 | 在线观看小视频 | www色com| 日韩午夜av| 麻豆视频在线观看 | 国产999| 久色网 | 深夜国产在线 | 91亚洲夫妻 | 精品久久91 | 午夜精品一区二区三区四区 | 国产高清网站 | 欧美日韩亚洲第一 | 久久免费观看少妇a级毛片 久久久久成人免费 | 高清av免费观看 | 伊人www22综合色 | 久久不射电影院 | 欧美作爱视频 | 亚洲伊人av | 国产精品s色 | 亚洲伊人天堂 | 日韩一区精品 | 美女免费黄视频网站 | 一区二区三区观看 | 久久8精品 | 69av视频在线 | 国产精品一区二区三区视频免费 | 欧美色操| 伊人五月天综合 | wwxxx日本| 欧美 高跟鞋交 xxxxhd | 久久久蜜桃一区二区 | 美女视频永久黄网站免费观看国产 | 丁香婷婷综合五月 | 日韩综合第一页 | 久久精品国产亚洲 | 国产精品成人国产乱 | 99久久婷婷国产一区二区三区 | 91精品久久香蕉国产线看观看 | 亚洲人片在线观看 | 碰碰影院| 欧洲一区精品 | 在线观看91 | 欧美性极品xxxx做受 | 在线观看av小说 | 国产精品久久久久久久久久99 | 午夜 免费| 成人高清在线 | 成年人毛片在线观看 | 欧美婷婷综合 | 国产伦理久久精品久久久久_ | 午夜精品中文字幕 | 亚洲精品国产自产拍在线观看 | 69国产盗摄一区二区三区五区 | 色噜噜噜噜 | 国产黄色在线看 | 国产一区二区免费在线观看 | 久久精品视频播放 | 中文字幕在线有码 | 国产精品ssss在线亚洲 | 亚洲午夜av久久乱码 | 精品在线免费视频 | 人人澡av| jizz18欧美18 | 天天爱天天操天天射 | 免费福利片2019潦草影视午夜 | 麻豆视频在线观看免费 | 蜜桃传媒一区二区 | 久久精品精品电影网 | 一区二区三区四区五区六区 | 免费男女网站 | 欧美在线free | 99精品国产一区二区 | 中文字幕高清在线 | 高潮毛片无遮挡高清免费 | 亚洲精品免费在线观看 | 久久精品精品 | 91精品无人成人www | 亚洲欧美视频在线播放 | 国产精品一区二区三区在线播放 | 国产视频精品久久 | 在线观看视频在线观看 | 精品成人久久 | av在线专区 | 99热99re6国产在线播放 | 久热久草在线 | 久久视频精品在线 | 精品免费视频123区 午夜久久成人 | 2021国产精品| 最新av中文字幕 | 天天插天天狠 | 日韩理论片在线 | 国产色拍拍拍拍在线精品 | 69视频在线| 97超碰超碰 | 青草视频免费观看 | 成人毛片一区 | 色先锋av资源中文字幕 | 人人射av| 亚洲欧美色婷婷 | 久久99精品国产一区二区三区 | 黄色aaa级片 | 亚洲日本va中文字幕 | www.久草.com | 亚洲资源视频 | 欧美一区在线看 | 天天曰天天曰 | 毛片1000部免费看 | 欧美精品网站 | 国产在线观看国语版免费 | 国产精品欧美久久久久久 | 91高清免费观看 | 欧美成人影音 | 国产在线观看免费 | 91在线区 | 免费在线激情电影 | 五月激情五月激情 | 国产v在线 | 久久久国产视频 | 精品久久久久久久久久久久久久久久 | 96国产精品视频 | 91.精品高清在线观看 | 日韩精品一区电影 | 亚洲专区欧美专区 | 不卡av电影在线观看 | 国产第一二区 | 成人a大片 | 久久综合99| 亚洲三级在线播放 | 国产精品福利在线播放 | 免费a v网站| 麻豆视频在线免费看 | 色综合激情网 | 国产资源在线免费观看 | 天天操夜夜操 | 国产亚洲在线 | 免费亚洲黄色 | 欧美激情综合五月色丁香 | 欧美久久久久久久久中文字幕 | 色婷婷六月天 | 少妇bbbb| 日韩毛片在线一区二区毛片 | 九九热免费在线视频 | 色视频网站免费观看 | 六月丁香社区 | 视频在线精品 | 欧美有色| 天天操天天干天天玩 | 成人一级片免费看 | 亚洲美女免费精品视频在线观看 | 婷婷综合成人 | 亚洲特级毛片 | 国产高清精 | 国产精品福利一区 | 中文字幕影片免费在线观看 | 色综合久久久网 | 黄色精品免费 | 久久夜色精品国产欧美一区麻豆 | 中文字幕在线视频一区二区 | 亚洲视频电影在线 | 国产99久久| 国产午夜精品av一区二区 | 伊人婷婷网 | 91香蕉视频污在线 | 免费观看丰满少妇做爰 | 91中文字幕在线视频 | 亚洲国产一区av | 国产精品24小时在线观看 | 人人插人人插 | 国产va饥渴难耐女保洁员在线观看 | 国产一性一爱一乱一交 | 国产国语在线 | 久久久久亚洲精品男人的天堂 | 中文字幕乱码在线播放 | 国产成人在线综合 | 国产精品久久久久久久久久久久午 | 色综合天天天天做夜夜夜夜做 | 99色在线观看视频 | 狠狠干在线 | 久久国产精品99久久久久 | av成人在线播放 | 欧美色图30p | 日韩成人免费在线 | 黄色一级动作片 | 国产中文字幕亚洲 | 天天躁日日躁狠狠躁av中文 | 91精品欧美 | 国产精品美女久久久久aⅴ 干干夜夜 | 国产护士av | 在线日韩一区 | 成年人网站免费观看 | 九九热在线精品 | 久久久久国产免费免费 | 手机av看片| 中文字幕你懂的 | 国产亚洲精品xxoo | 国产精品久久久久久久久免费看 | 亚洲 综合 国产 精品 | 国色综合| 国产小视频精品 | 亚洲另类在线视频 | 久久视频在线看 | 精品伊人久久久 | 天天摸天天舔 | 免费一级片观看 | 91精品国产一区二区在线观看 | 日韩精品在线看 | 亚洲精品自拍视频在线观看 | 国产视频在线观看一区 | 我爱av激情网 | 久久午夜羞羞影院 | 午夜精品久久久久久久久久久久 | 欧美 亚洲 另类 激情 另类 | 久要激情网 | 97免费在线观看视频 | 久久久免费播放 | 免费看污污视频的网站 | 国产黄网在线 | 免费高清无人区完整版 | 久久黄色精品视频 | 免费一区在线 | 国产精品成人一区二区 | 久久久精品亚洲 | 亚洲男男gaygay无套同网址 | 在线免费高清 | 午夜电影一区 | 中文字幕在线日亚洲9 | 国产精品久久久久久吹潮天美传媒 | 天天操夜操视频 | 国产一级特黄毛片在线毛片 | 国产精品99精品久久免费 | 伊人色播 | 亚洲国产mv| 亚洲精品字幕在线观看 | 欧美一区二区在线看 | 丁香视频五月 | 婷婷日日 | 国产啊v在线观看 | 美女黄濒 | 久久综合婷婷国产二区高清 | 免费在线观看日韩视频 | 四虎在线观看精品视频 | 午夜国产一区二区三区四区 | 国产视频在线观看免费 | 黄色美女免费网站 | 九九视频免费在线观看 | 国产99在线免费 | 黄色免费大全 | 97精品国产aⅴ | 天天操天天谢 | 国产精品一区二区三区视频免费 | 成人三级网站在线观看 | 亚州精品在线视频 | 欧美极品少妇xxxxⅹ欧美极品少妇xxxx亚洲精品 | 国产91精品久久久久 | 激情开心 | www.狠狠干 | a天堂最新版中文在线地址 久久99久久精品国产 | 国产免费成人av | 国产精品日韩在线播放 | 中文免费观看 | 特级西西444www大精品视频免费看 | 九九在线高清精品视频 | 麻花天美星空视频 | av 一区 二区 久久 | 91高清不卡 | 久草视频在线资源 | 国产精品久久久久久久久久久不卡 | 国产免费一区二区三区最新6 | 日韩成人精品一区二区三区 | 久久久久久国产精品免费 | 西西人体4444www高清视频 | 成人av电影免费 | 在线免费观看欧美日韩 | 日韩免费视频在线观看 | 国产黄色精品在线观看 | 日韩欧美一区二区三区在线观看 | 69视频在线播放 | 91在线视频免费 | 国产成人99av超碰超爽 | 91视频电影| 在线观看视频在线 | 国产福利一区二区在线 | 91av视频网 | 色婷婷av国产精品 | 男女激情麻豆 | 18久久久久 | 日韩精品一区二区在线视频 | 天天操婷婷| 久久国产精品99国产 | 丁香五月亚洲综合在线 | 日夜夜精品视频 | 欧美日韩国产一二三区 | 免费a视频在线观看 | 五月天婷亚洲天综合网精品偷 | 国产一二区视频 | 精品国产视频在线 | 久久国产精品99久久久久久进口 | 狠狠狠狠狠狠狠 | 天天干天天操天天拍 | 日韩在线播放av | 久久歪歪| 在线亚洲欧美视频 | 久久精品国产精品亚洲精品 | 国产精品网红福利 | 成人国产精品久久久久久亚洲 | 久久激五月天综合精品 | 精品国产视频一区 | 久久综合中文色婷婷 | 欧美片一区二区三区 | 成 人 黄 色 视频 免费观看 | 日本一区二区三区免费看 | 欧美精品在线免费 | 91丨九色丨丝袜 | 日韩午夜视频在线观看 | 99热在线国产 | 欧美一区二区免费在线观看 | 日韩精品在线视频 | 亚洲国产欧洲综合997久久, | 欧美一区二区三区在线视频观看 | 高清av影院| 91精彩视频在线观看 | 日韩在线不卡视频 | 免费在线观看成人小视频 | 国产精品大片在线观看 | 日韩欧美视频一区 | 欧美日韩一区二区三区在线免费观看 | 久久69av | 国产精品欧美 | 狠狠色丁香婷综合久久 | 精品久久久久久久久久久久久久久久久久 | 日韩女同一区二区三区在线观看 | 欧美日韩中文国产 | 欧美日韩一级在线 | 欧美精品在线免费 | 日韩r级电影在线观看 | 免费在线播放av电影 | 深夜精品福利 | 亚洲春色奇米影视 | 免费h视频| 免费一级片在线 | 99re视频在线观看 | 午夜av免费看 | 国产精品青草综合久久久久99 | 免费一级特黄录像 | 六月天综合网 | 81精品国产乱码久久久久久 | 国产精品一区在线观看你懂的 | 在线午夜电影神马影院 | 欧美福利网站 | 91丨九色丨勾搭 | 久久久亚洲国产精品麻豆综合天堂 | www五月天 | 久久久久久激情 | 在线免费观看黄色小说 | 探花视频在线版播放免费观看 | 国产美女视频免费观看的网站 | 亚洲国产视频直播 | 色婷av| 国产亚洲精品久久久久久大师 | 在线视频电影 | 亚洲成人影音 | 一级黄色片在线免费看 | 国产精品一区在线播放 | av免费看网站 | 中文字幕在线观看完整版电影 | 97超碰人人网 | 亚洲精品在线二区 | 日本公妇色中文字幕 | 五月天综合婷婷 | 婷婷激情综合网 | 国产精品一区专区欧美日韩 | 波多野结衣电影久久 | 午夜视频在线观看一区二区 | 久久美女免费视频 | 1024手机在线看 | av免费在线观看1 | 西西444www高清大胆 | 欧美极度另类性三渗透 | av天天澡天天爽天天av | 日韩电影中文字幕在线观看 | 伊人热| 亚洲精品在线视频网站 | 成年人毛片在线观看 | 五月丁色 | 日韩精品一区二 | 色综合www| 欧美成人xxxxx| 毛片网免费| 久草在线精品观看 | 国内精品久久久久久久久久久久 | 欧美色操| 国产精品久久久久久久久久东京 | 国产精品久久久久久久久久东京 | 在线a视频免费观看 | 2022中文字幕在线观看 | 夜夜躁狠狠躁日日躁 | 久久久久久久久久国产精品 | 亚洲精品乱码久久久久久蜜桃91 | 91久久爱热色涩涩 | 国产亚洲精品久久久久久无几年桃 | 88av网站| 91x色| 欧美激情第八页 | 一区二区三区在线观看免费视频 | av中文在线 | 91亚洲精品久久久久图片蜜桃 | 久久精彩免费视频 | 国产成人综合在线观看 | 99久久日韩精品免费热麻豆美女 | 97超碰人人在线 | avsex| 日韩免费一级a毛片在线播放一级 | 日本乱码在线 | 97视频资源| 国产精品免费观看视频 | 国产不卡毛片 | 久久丁香| 国产一线二线三线性视频 | 国产美女久久久 | 狠狠色丁香婷综合久久 | 日本久久久久久 | 久久久久久久久久久久久久电影 | 狠狠久久伊人 | 中文字幕在线观看网站 | 日韩在观看线 | 在线亚洲成人 | 日韩欧美在线综合网 | 激情综合五月天 | 在线成人小视频 | 丁香激情综合久久伊人久久 | 人人玩人人添人人澡超碰 | 99精品视频网 | 五月激情丁香婷婷 | 久久久久久久久久久高潮一区二区 | 成人av网址大全 | 在线激情av电影 | 一区二区影院 | 91成人免费观看视频 | 国产成人精品一区二区三区福利 | 成年人免费在线播放 | 国产精品自产拍在线观看 | 免费成人在线电影 | 97精品欧美91久久久久久 | 免费一级黄色 | 精品久久久久久久久亚洲 | 欧美一级电影在线观看 | av免费网站观看 | www.久久免费 | 人人干网站 | 国产精品五月天 | 国产精品久久久久999 | 亚洲国产影院av久久久久 | 欧美成人久久 | 天天干天天玩天天操 | 99视频精品免费观看, | 日韩久久久久久久久久 | 久久激情日本aⅴ | 美女网站视频久久 | 91成人网在线观看 | 国产精品一区二区久久 | 天天干天天插伊人网 | 久久99精品国产麻豆婷婷 | 精品999在线| 国产一卡在线 | 四虎伊人 | 日韩精品在线观看av | 亚洲一区欧美激情 | 久久超碰99 | 久久综合久久综合这里只有精品 | 欧美,日韩 | 免费欧美 | 国产精品久久久久一区二区三区共 | 欧美久久九九 | 97超碰资源网 | 国产精品免费在线 | 91精品一区二区三区蜜臀 | 国产麻豆果冻传媒在线观看 | 国产一级特黄毛片在线毛片 | 色天堂在线视频 | av成人在线观看 | 久久综合操 | 成人网在线免费视频 | 亚洲免费激情 | 国产三级视频 | 国产色视频一区 | 国产精品你懂的在线观看 | 996久久国产精品线观看 | 日韩午夜电影 | 国产99久久九九精品 | 久久成人国产精品一区二区 | 久久国产欧美日韩精品 | 成人av一区二区在线观看 | 亚洲v欧美v国产v在线观看 | 免费观看的黄色 | 97超碰国产精品女人人人爽 | 欧美成人理伦片 | 久久久精品福利视频 | 午夜美女福利直播 | 色播亚洲婷婷 | 激情网站免费观看 | www久久99 | 免费av在线网站 | 久久成人麻豆午夜电影 | 免费在线播放黄色 | 一区二区三区精品在线视频 | 成人国产一区二区 | 亚洲成人一区 | 国产亚洲精品久久久久久网站 | 人人澡人人爽 | 精品国产成人av在线免 | 国产在线观看一区 | 婷婷深爱网 | 欧洲不卡av | 麻豆久久久久久久 | 亚洲精品中文字幕视频 | 成年人黄色免费网站 | 国产粉嫩在线 | 黄色av网站在线免费观看 | 日韩色爱 | 国产视频 亚洲精品 | 亚洲区另类春色综合小说校园片 | 人人爽人人爽 | 国产精品淫 | 日韩高清不卡在线 | 91免费网 | 久草精品视频在线播放 | 人人爱人人做人人爽 | 9999精品| 日韩欧美一区二区三区在线观看 | 国产精品久久久久久久午夜片 | 国产中文视 | 亚洲在线视频观看 | 狠狠久久 | 美女在线观看网站 | 国产免费一区二区三区最新 | 成人免费网视频 | 亚洲开心激情 | 69久久久 | 欧美亚洲一级片 | 久久天天拍 | 久久综合射 | 国产又粗又猛又黄 | 色狠狠婷婷 | 日韩啪视频 | 国产精品久久久久三级 | 成人av播放 | 91在线中字 | 少妇视频在线播放 | 国产99久久久国产精品成人免费 | 蜜桃传媒一区二区 | 精品99免费视频 | 五月丁香 | 午夜精品福利影院 | 激情开心| 久草视频免费在线观看 | 国产一级免费电影 | 国产精品视频免费在线观看 | 成人一区二区三区在线 | 九九视频网 | 在线观看成人一级片 | 91精品毛片 | 欧美精品视| 亚洲精品国产精品国自产 | av在线亚洲天堂 | 国产在线观看不卡 | www.久久色| 毛片基地黄久久久久久天堂 | 久久精品视频日本 | 国产精品亚洲片在线播放 | 最近中文字幕在线 | 2022国产精品视频 | 91黄在线看 | 日韩中字在线 | 精品一区二区免费在线观看 | 亚洲国产精彩中文乱码av | 黄色软件在线观看免费 | 黄色午夜网站 | 亚洲精品乱码久久久久久蜜桃动漫 | 国产一区二区精品 | 九九在线高清精品视频 | 欧美a√大片| 91精品国产欧美一区二区成人 | 午夜久久福利影院 | 久久天天躁夜夜躁狠狠85麻豆 | 最近日本字幕mv免费观看在线 | 亚洲一区二区高潮无套美女 | 香蕉色综合| 在线观看一区二区精品 | 久热只有精品 | 日韩av电影免费在线观看 | 国产精品久久久久久久久岛 | 亚洲精品国偷拍自产在线观看蜜桃 | 成人资源网 | 国产高清在线免费视频 | 国产 日韩 中文字幕 | 97精品在线观看 | 91在线视频免费 | 丁香花在线视频观看免费 | 五月天久久婷 | 在线电影 你懂得 | 国产一区二区三区在线免费观看 | 国产伦精品一区二区三区照片91 | 在线观看黄网站 | 综合天堂av久久久久久久 | av福利网址导航 | 中文字幕av免费观看 | 国产精品不卡在线观看 | 2019中文最近的2019中文在线 | 久久久五月婷婷 | 手机成人免费视频 | 久久午夜电影院 | 一区二区欧美在线观看 | 蜜桃传媒一区二区 | 狠狠色狠狠色综合日日92 | 精品在线免费视频 | 人人干狠狠操 | 狠狠激情中文字幕 | 91观看视频 | 97色视频在线 | 国产精品久久久久久久久搜平片 | 最近中文字幕完整视频高清1 | 欧美尹人 | 国产99久久九九精品免费 | 99国产情侣在线播放 | 欧美一区二区日韩一区二区 | 国产视频一区在线播放 | 国产一级精品在线观看 | 在线观看岛国av | 国产午夜精品理论片在线 | 婷婷在线免费 | 国产精品 美女 | 国产在线观看一 | 日韩欧美视频在线免费观看 | 国产一级电影免费观看 | 久草在线免费电影 | 91漂亮少妇露脸在线播放 | 99精品久久久久久久久久综合 | av国产网站| 国产aa精品 | 日韩国产精品久久 | www夜夜操com| 国产香蕉视频在线播放 | 97福利 | 久久精品草 | av在线网站观看 | 久久成年人网站 | 97成人精品视频在线观看 | 中文字幕在线高清 | 一区二区三区在线观看免费 | 久久精品国产一区二区三 | 亚洲精品综合在线观看 | 久久精品爱爱视频 | 99爱国产精品 | 日韩欧美视频在线 | 人人干人人添 | 五月天激情婷婷 | 欧美一区二区三区特黄 | 97视频免费在线 | 亚洲永久精品在线 | 免费看毛片在线 | 久久伦理影院 | 日韩欧美国产视频 | 国产精品乱码久久 | 欧美日韩国产一二三区 | 免费91在线| 一区二区影院 | 综合久久久久久 | 亚洲国产高清视频 | 国产精品色在线 | 韩国一区在线 | 99久久夜色精品国产亚洲 | 在线观看免费高清视频大全追剧 | 成年人黄色在线观看 | 中文字幕成人在线 | 最近更新的中文字幕 | 久草在线最新视频 | 亚洲色图22p | 欧美日韩裸体免费视频 | 狠狠躁夜夜躁人人爽视频 | 国产伦精品一区二区三区高清 | 免费看一级一片 | 国产成人精品综合久久久久99 | 天堂va欧美va亚洲va老司机 | 91色吧 | 欧美伦理电影一区二区 | 天天综合天天综合 | 久草在线视频在线观看 | 国产高清在线精品 | 久久久这里有精品 | 97在线观看免费高清完整版在线观看 | 国产精品一区二区62 | 久久a级片 | 欧美日韩国产精品一区二区三区 | 亚洲精品tv久久久久久久久久 | 亚洲成人av影片 | av电影不卡在线 | 成人在线网站观看 | 在线观看一区视频 | 国产激情久久久 | 日韩色一区二区三区 | 成人av电影免费观看 | 999久久精品 | 五月开心六月婷婷 | 国产精品入口a级 | 日本免费久久高清视频 | 天天草天天爽 | 亚洲一区精品人人爽人人躁 | 日韩免费一级a毛片在线播放一级 | .国产精品成人自产拍在线观看6 | 精品免费观看视频 | 国产精品亚洲a | 国产精品 国内视频 | 国产精品免费大片视频 | 91色欧美 | 天天摸日日操 | 亚洲精品国偷拍自产在线观看蜜桃 | 日本在线观看中文字幕无线观看 | 欧美天堂影院 | 久久久久久久网站 | 日本在线观看一区二区 | 91视频在线播放视频 | 久久精品视频在线观看 | 国产精品人人做人人爽人人添 | 韩日电影在线 | 天天射天天做 | 国产在线观看二区 | 手机在线免费av | 国内综合精品午夜久久资源 | 99精品视频免费观看 | 豆豆色资源网xfplay | 99免费看片 | 国产视频在线观看免费 | 久久99久久99精品免视看婷婷 | www.av免费观看 | 一区二区视频在线观看免费 | 国产精品18久久久久白浆 | 国产在线国偷精品产拍免费yy | 91视频在线观看免费 | 国产一级电影网 | 亚洲欧美日韩一二三区 | 天天操天天舔天天干 | 夜夜操狠狠干 | 91av在线看 | 91麻豆精品国产91久久久久久久久 | 好看的国产精品视频 | 91在线资源| 婷婷四房综合激情五月 | 免费视频a| 玖玖精品在线 | 亚洲aⅴ乱码精品成人区 | 黄色网址在线播放 | 成人av一区二区三区 | 99性视频| 国产成人亚洲精品自产在线 | 午夜精品三区 | 欧美一区二区在线免费观看 | 亚洲综合色婷婷 | 欧美日韩国产mv | 国产69久久精品成人看 | 亚洲欧美偷拍另类 | 久久久福利 | 成人av资源 | 欧美日韩调教 | 午夜av电影院 | 久久久久草 | 国产亚洲精品女人久久久久久 | 国产在线观看午夜 | 成年人免费在线播放 | 天天草天天草 | 毛片网免费| 国产日韩欧美在线观看视频 | 日本不卡123区| 在线导航av | 欧美精彩视频 | 国产精品国产三级国产aⅴ无密码 | 日韩大片在线 | 波多野结衣资源 | 337p日本大胆噜噜噜噜 | 久热色超碰 | 国产成人专区 | 高清不卡一区二区在线 | 天堂va欧美va亚洲va老司机 | 国产1区2区| 99久久99久国产黄毛片 | 五月天综合色 | 欧美久草网 | 久久爱综合 | 亚洲精品在线观 | 伊人网站| 96精品高清视频在线观看软件特色 | 伊人成人激情 | 欧美做受高潮1 | 色综合天天爱 | 狠狠色狠狠色 | 国产精品丝袜在线 | 99在线观看视频网站 | 亚洲美女精品区人人人人 | 超碰在线日韩 | 美女视频黄网站 | 天堂入口网站 | 麻花天美星空视频 | 在线观看成人一级片 | 国产精品青草综合久久久久99 | www.夜夜爱 | 欧美久久影院 | 最新国产精品久久精品 | 日本久草电影 | 亚洲黄色片 | 日本不卡一区二区三区在线观看 | 91精品国产99久久久久久久 | 日本韩国欧美在线观看 | 亚洲视频 在线观看 | 久久视频这里有久久精品视频11 | 毛片永久新网址首页 | 97在线精品视频 | 午夜精品久久久久久99热明星 | 免费视频xnxx com | 午夜av一区二区三区 | 国产一区二区久久久久 | 国产男女无遮挡猛进猛出在线观看 | 深夜免费福利视频 | 久久精品一区二区 | 98超碰在线 | 欧美嫩草影院 | 国产精品久久毛片 | 久久精品中文视频 | 美女久久 | 久久久天天操 | 有码中文字幕在线观看 | 我爱av激情网 | 国产成人综合精品 | 日韩精品一区二区在线视频 | 亚洲精品自拍视频在线观看 | 中文字幕欧美日韩va免费视频 | 日日夜夜中文字幕 | 天天干天天摸 | 日韩免费电影网站 | 91精品影视| 人人澡人摸人人添学生av | 99精品国自产在线 | 日韩电影一区二区在线观看 | 国产免费看 | 成人久久毛片 | 久久伊人爱 | 日韩精品网址 | 91视频com | 美女视频黄免费 | 97在线精品国自产拍中文 | 日韩剧情| 91精品国产自产在线观看 |