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

搭建高可用的Redis服務(wù),需要注意這些方面!

存儲(chǔ) 存儲(chǔ)軟件 Redis
基于內(nèi)存的Redis應(yīng)該是目前各種web開發(fā)業(yè)務(wù)中最為常用的key-value數(shù)據(jù)庫了,我們經(jīng)常在業(yè)務(wù)中用其存儲(chǔ)用戶登陸態(tài)(Session存儲(chǔ)),加速一些熱數(shù)據(jù)的查詢(相比較mysql而言,速度有數(shù)量級(jí)的提升),做簡(jiǎn)單的消息隊(duì)列(LPUSH和BRPOP)、訂閱發(fā)布(PUB/SUB)系統(tǒng)等等。

 基于內(nèi)存的Redis應(yīng)該是目前各種web開發(fā)業(yè)務(wù)中最為常用的key-value數(shù)據(jù)庫了,我們經(jīng)常在業(yè)務(wù)中用其存儲(chǔ)用戶登陸態(tài)(Session存儲(chǔ)),加速一些熱數(shù)據(jù)的查詢(相比較mysql而言,速度有數(shù)量級(jí)的提升),做簡(jiǎn)單的消息隊(duì)列(LPUSH和BRPOP)、訂閱發(fā)布(PUB/SUB)系統(tǒng)等等。規(guī)模比較大的互聯(lián)網(wǎng)公司,一般都會(huì)有專門的團(tuán)隊(duì),將Redis存儲(chǔ)以基礎(chǔ)服務(wù)的形式提供給各個(gè)業(yè)務(wù)調(diào)用。

[[266506]]

不過任何一個(gè)基礎(chǔ)服務(wù)的提供方,都會(huì)被調(diào)用方問起的一個(gè)問題是:你的服務(wù)是否具有高可用性?***不要因?yàn)槟愕姆?wù)經(jīng)常出問題,導(dǎo)致我這邊的業(yè)務(wù)跟著遭殃。最近在項(xiàng)目中也搭了一套小型的“高可用”Redis服務(wù),在此做一下自己的總結(jié)和思考。

首先要定義一下對(duì)于Redis服務(wù)來說怎樣才算是高可用,即在各種出現(xiàn)異常的情況下,依然可以正常提供服務(wù)。或者寬松一些,出現(xiàn)異常的情況下,只經(jīng)過很短暫的時(shí)間即可恢復(fù)正常服務(wù)。所謂異常,應(yīng)該至少包含了以下幾種可能性:

【異常1】某個(gè)節(jié)點(diǎn)服務(wù)器的某個(gè)進(jìn)程突然down掉(例如某開發(fā)手殘,把一臺(tái)服務(wù)器的redis-server進(jìn)程kill了)

【異常2】某臺(tái)節(jié)點(diǎn)服務(wù)器down掉,相當(dāng)于這個(gè)節(jié)點(diǎn)上所有進(jìn)程都停了(例如某運(yùn)維手殘,把一個(gè)服務(wù)器的電源拔了;例如一些老舊機(jī)器出現(xiàn)硬件故障)

【異常3】任意兩個(gè)節(jié)點(diǎn)服務(wù)器之間的通信中斷了(例如某臨時(shí)工手殘,把用于兩個(gè)機(jī)房通信的光纜挖斷了)

其實(shí)以上任意一種異常都是小概率事件,而做到高可用性的基本指導(dǎo)思想就是:多個(gè)小概率事件同時(shí)發(fā)生的概率可以忽略不計(jì)。只要我們?cè)O(shè)計(jì)的系統(tǒng)可以容忍短時(shí)間內(nèi)的單點(diǎn)故障,即可實(shí)現(xiàn)高可用性。

對(duì)于搭建高可用Redis服務(wù),網(wǎng)上已有了很多方案,例如Keepalived,Codis,Twemproxy,Redis Sentinel。其中Codis和Twemproxy主要是用于大規(guī)模的Redis集群中,也是在Redis官方發(fā)布Redis Sentinel之前twitter和豌豆莢提供的開源解決方案。我的業(yè)務(wù)中數(shù)據(jù)量并不大,所以搞集群服務(wù)反而是浪費(fèi)機(jī)器了。最終在Keepalived和Redis Sentinel之間做了個(gè)選擇,選擇了官方的解決方案Redis Sentinel。

Redis Sentinel可以理解為一個(gè)監(jiān)控Redis Server服務(wù)是否正常的進(jìn)程,并且一旦檢測(cè)到不正常,可以自動(dòng)地將備份(slave)Redis Server啟用,使得外部用戶對(duì)Redis服務(wù)內(nèi)部出現(xiàn)的異常無感知。我們按照由簡(jiǎn)至繁的步驟,搭建一個(gè)最小型的高可用的Redis服務(wù)。

方案1:?jiǎn)螜C(jī)版Redis Server,無Sentinel

 

一般情況下,我們搭的個(gè)人網(wǎng)站,或者平時(shí)做開發(fā)時(shí),會(huì)起一個(gè)單實(shí)例的Redis Server。調(diào)用方直接連接Redis服務(wù)即可,甚至Client和Redis本身就處于同一臺(tái)服務(wù)器上。這種搭配僅適合個(gè)人學(xué)習(xí)娛樂,畢竟這種配置總會(huì)有單點(diǎn)故障的問題無法解決。一旦Redis服務(wù)進(jìn)程掛了,或者服務(wù)器1停機(jī)了,那么服務(wù)就不可用了。并且如果沒有配置Redis數(shù)據(jù)持久化的話,Redis內(nèi)部已經(jīng)存儲(chǔ)的數(shù)據(jù)也會(huì)丟失。

方案2:主從同步Redis Server,單實(shí)例Sentinel

 

為了實(shí)現(xiàn)高可用,解決方案1中所述的單點(diǎn)故障問題,我們必須增加一個(gè)備份服務(wù),即在兩臺(tái)服務(wù)器上分別各啟動(dòng)一個(gè)Redis Server進(jìn)程,一般情況下由master提供服務(wù),slave只負(fù)責(zé)同步和備份。與此同時(shí),在額外啟動(dòng)一個(gè)Sentinel進(jìn)程,監(jiān)控兩個(gè)Redis Server實(shí)例的可用性,以便在master掛掉的時(shí)候,及時(shí)把slave提升到master的角色繼續(xù)提供服務(wù),這樣就實(shí)現(xiàn)了Redis Server的高可用。這基于一個(gè)高可用服務(wù)設(shè)計(jì)的依據(jù),即單點(diǎn)故障本身就是個(gè)小概率事件,而多個(gè)單點(diǎn)同時(shí)故障(即master和slave同時(shí)掛掉),可以認(rèn)為是(基本)不可能發(fā)生的事件。

對(duì)于Redis服務(wù)的調(diào)用方來說,現(xiàn)在要連接的是Redis Sentinel服務(wù),而不是Redis Server了。常見的調(diào)用過程是,client先連接Redis Sentinel并詢問目前Redis Server中哪個(gè)服務(wù)是master,哪些是slave,然后再去連接相應(yīng)的Redis Server進(jìn)行操作。當(dāng)然目前的第三方庫一般都已經(jīng)實(shí)現(xiàn)了這一調(diào)用過程,不再需要我們手動(dòng)去實(shí)現(xiàn)(例如Nodejs的ioredis,PHP的predis,Golang的go-redis/redis,JAVA的jedis等)。

然而,我們實(shí)現(xiàn)了Redis Server服務(wù)的主從切換之后,又引入了一個(gè)新的問題,即Redis Sentinel本身也是個(gè)單點(diǎn)服務(wù),一旦Sentinel進(jìn)程掛了,那么客戶端就沒辦法鏈接Sentinel了。所以說,方案2的配置并無法實(shí)現(xiàn)高可用性。

方案3:主從同步Redis Server,雙實(shí)例Sentinel

 

為了解決方案2的問題,我們把Redis Sentinel進(jìn)程也額外啟動(dòng)一份,兩個(gè)Sentinel進(jìn)程同時(shí)為客戶端提供服務(wù)發(fā)現(xiàn)的功能。對(duì)于客戶端來說,它可以連接任何一個(gè)Redis Sentinel服務(wù),來獲取當(dāng)前Redis Server實(shí)例的基本信息。通常情況下,我們會(huì)在Client端配置多個(gè)Redis Sentinel的鏈接地址,Client一旦發(fā)現(xiàn)某個(gè)地址連接不上,會(huì)去試圖連接其他的Sentinel實(shí)例,這當(dāng)然也不需要我們手動(dòng)實(shí)現(xiàn),各個(gè)開發(fā)語言中比較熱門的redis連接庫都幫我們實(shí)現(xiàn)了這個(gè)功能。我們預(yù)期是:即使其中一個(gè)Redis Sentinel掛掉了,還有另外一個(gè)Sentinel可以提供服務(wù)。

然而,愿景是美好的,現(xiàn)實(shí)卻是很殘酷的。如此架構(gòu)下,依然無法實(shí)現(xiàn)Redis服務(wù)的高可用。方案3示意圖中,紅線部分是兩臺(tái)服務(wù)器之間的通信,而我們所設(shè)想的異常場(chǎng)景(【異常2】)是,某臺(tái)服務(wù)器整體down機(jī),不妨假設(shè)服務(wù)器1停機(jī),此時(shí),只剩下服務(wù)器2上面的Redis Sentinel和slave Redis Server進(jìn)程。這時(shí),Sentinel其實(shí)是不會(huì)將僅剩的slave切換成master繼續(xù)服務(wù)的,也就導(dǎo)致Redis服務(wù)不可用,因?yàn)镽edis的設(shè)定是只有當(dāng)超過50%的Sentinel進(jìn)程可以連通并投票選取新的master時(shí),才會(huì)真正發(fā)生主從切換。本例中兩個(gè)Sentinel只有一個(gè)可以連通,等于50%并不在可以主從切換的場(chǎng)景中。

你可能會(huì)問,為什么Redis要有這個(gè)50%的設(shè)定?假設(shè)我們?cè)试S小于等于50%的Sentinel連通的場(chǎng)景下也可以進(jìn)行主從切換。試想一下【異常3】,即服務(wù)器1和服務(wù)器2之間的網(wǎng)絡(luò)中斷,但是服務(wù)器本身是可以運(yùn)行的。如下圖所示:

 

實(shí)際上對(duì)于服務(wù)器2來說,服務(wù)器1直接down掉和服務(wù)器1網(wǎng)絡(luò)連不通是一樣的效果,反正都是突然就無法進(jìn)行任何通信了。假設(shè)網(wǎng)絡(luò)中斷時(shí)我們?cè)试S服務(wù)器2的Sentinel把slave切換為master,結(jié)果就是你現(xiàn)在擁有了兩個(gè)可以對(duì)外提供服務(wù)的Redis Server。Client做任何的增刪改操作,有可能落在服務(wù)器1的Redis上,也有可能落在服務(wù)器2的Redis上(取決于Client到底連通的是哪個(gè)Sentinel),造成數(shù)據(jù)混亂。即使后面服務(wù)器1和服務(wù)器2之間的網(wǎng)絡(luò)又恢復(fù)了,那我們也無法把數(shù)據(jù)統(tǒng)一了(兩份不一樣的數(shù)據(jù),到底該信任誰呢?),數(shù)據(jù)一致性完全被破壞。

方案4:主從同步Redis Server,三實(shí)例Sentinel

 

鑒于方案3并沒有辦法做到高可用,我們最終的版本就是上圖所示的方案4了。實(shí)際上這就是我們最終搭建的架構(gòu)。我們引入了服務(wù)器3,并且在3上面又搭建起一個(gè)Redis Sentinel進(jìn)程,現(xiàn)在由三個(gè)Sentinel進(jìn)程來管理兩個(gè)Redis Server實(shí)例。這種場(chǎng)景下,不管是單一進(jìn)程故障、還是單個(gè)機(jī)器故障、還是某兩個(gè)機(jī)器網(wǎng)絡(luò)通信故障,都可以繼續(xù)對(duì)外提供Redis服務(wù)。

實(shí)際上,如果你的機(jī)器比較空閑,當(dāng)然也可以把服務(wù)器3上面也開啟一個(gè)Redis Server,形成1 master + 2 slave的架構(gòu),每個(gè)數(shù)據(jù)都有兩個(gè)備份,可用性會(huì)提升一些。當(dāng)然也并不是slave越多越好,畢竟主從同步也是需要時(shí)間成本的。

在方案4中,一旦服務(wù)器1和其他服務(wù)器的通信完全中斷,那么服務(wù)器2和3會(huì)將slave切換為master。對(duì)于客戶端來說,在這么一瞬間會(huì)有2個(gè)master提供服務(wù),并且一旦網(wǎng)絡(luò)恢復(fù)了,那么所有在中斷期間落在服務(wù)器1上的新數(shù)據(jù)都會(huì)丟失。如果想要部分解決這個(gè)問題,可以配置Redis Server進(jìn)程,讓其在檢測(cè)到自己網(wǎng)絡(luò)有問題的時(shí)候,立即停止服務(wù),避免在網(wǎng)絡(luò)故障期間還有新數(shù)據(jù)進(jìn)來(可以參考Redis的min-slaves-to-write和min-slaves-max-lag這兩個(gè)配置項(xiàng))。

至此,我們就用3臺(tái)機(jī)器搭建了一個(gè)高可用的Redis服務(wù)。其實(shí)網(wǎng)上還有更加節(jié)省機(jī)器的辦法,就是把一個(gè)Sentinel進(jìn)程放在Client機(jī)器上,而不是服務(wù)提供方的機(jī)器上。只不過在公司里面,一般服務(wù)的提供方和調(diào)用方并不來自同一個(gè)團(tuán)隊(duì)。兩個(gè)團(tuán)隊(duì)共同操作同一個(gè)機(jī)器,很容易因?yàn)闇贤▎栴}導(dǎo)致一些誤操作,所以出于這種人為因素的考慮,我們還是采用了方案4的架構(gòu)。并且由于服務(wù)器3上面只跑了一個(gè)Sentinel進(jìn)程,對(duì)服務(wù)器資源消耗并不多,還可以用服務(wù)器3來跑一些其他的服務(wù)。

易用性:像使用單機(jī)版Redis一樣使用Redis Sentinel

作為服務(wù)的提供方,我們總是會(huì)講到用戶體驗(yàn)問題。在上述方案當(dāng)中始終有一個(gè)讓Client端用的不是那么舒服的地方。對(duì)于單機(jī)版Redis,Client端直接連接Redis Server,我們只需要給一個(gè)ip和port,Client就可以使用我們的服務(wù)了。而改造成Sentinel模式之后,Client不得不采用一些支持Sentinel模式的外部依賴包,并且還要修改自己的Redis連接配置,這對(duì)于“矯情”的用戶來講顯然是不能接收的。有沒有辦法還是像在使用單機(jī)版的Redis那樣,只給Client一個(gè)固定的ip和port就可以提供服務(wù)呢?

 

答案當(dāng)然是肯定的。這可能就要引入虛擬IP(Virtual IP,VIP),如上圖所示。我們可以把虛擬IP指向Redis Server master所在的服務(wù)器,在發(fā)生Redis主從切換的時(shí)候,會(huì)觸發(fā)一個(gè)回調(diào)腳本,回調(diào)腳本中將VIP切換至slave所在的服務(wù)器。這樣對(duì)于Client端來說,他仿佛在使用的依然是一個(gè)單機(jī)版的高可用Redis服務(wù)。

結(jié)語

搭建任何一個(gè)服務(wù),做到“能用”其實(shí)是非常簡(jiǎn)單的,就像我們運(yùn)行一個(gè)單機(jī)版的Redis。不過一旦要做到“高可用”,事情就會(huì)變得復(fù)雜起來。業(yè)務(wù)中使用了額外的兩臺(tái)服務(wù)器,3個(gè)Sentinel進(jìn)程+1個(gè)Slave進(jìn)程,只是為了保證在那小概率的事故中依然做到服務(wù)可用。在實(shí)際業(yè)務(wù)中我們還啟用了supervisor做進(jìn)程監(jiān)控,一旦進(jìn)程意外退出,會(huì)自動(dòng)嘗試重新啟動(dòng)。

責(zé)任編輯:武曉燕 來源: 博客園
相關(guān)推薦

2015-09-16 13:19:11

2019-05-15 10:38:17

微服務(wù)架構(gòu)監(jiān)控

2009-08-10 15:56:35

802局域網(wǎng)網(wǎng)橋兼容性

2016-09-07 09:25:10

服務(wù)器高防服務(wù)器

2020-07-24 08:50:17

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

2023-12-16 10:37:58

Vue 2框架功能

2014-01-26 14:24:25

開源項(xiàng)目

2011-05-26 17:37:11

Ajax

2021-01-11 07:40:30

中斷程序中斷函數(shù)嵌入式系統(tǒng)

2014-03-18 09:04:25

2014-03-18 11:08:07

2013-09-29 10:36:08

VMware虛擬化

2009-04-23 14:30:19

UML建模

2020-10-26 14:01:22

Java泛型

2023-12-28 09:54:22

Java內(nèi)存開發(fā)

2016-01-31 10:59:19

設(shè)計(jì)app

2023-11-13 09:03:10

2017-03-08 15:37:23

商用電腦初創(chuàng)企業(yè)

2024-05-07 08:32:45

Redis高可用映射關(guān)系

2019-06-23 16:02:12

Kubernetes集群節(jié)點(diǎn)高并發(fā)
點(diǎn)贊
收藏

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

国产成人精品亚洲| wwwww在线观看| 日本精品在线| 丁香啪啪综合成人亚洲小说 | 亚洲乱码视频| 在线电影av不卡网址| 久久精品无码一区二区三区毛片| 理论片午夜视频在线观看| 国产精品日日摸夜夜摸av| 高清不卡一区二区三区| 欧美一级做a爰片免费视频| 中文字幕人成人乱码| 亚洲欧美另类人妖| 欧美69精品久久久久久不卡| 最新日韩三级| 亚洲国产成人av网| 亚洲7777| 天堂在线免费av| 韩国成人精品a∨在线观看| 97国产一区二区精品久久呦 | 国产精品直播网红| 日韩乱码一区二区| 欧美黄污视频| www.久久色.com| 免费在线观看污| 欧美18免费视频| 日韩一级完整毛片| 亚洲污视频在线观看| 三妻四妾完整版在线观看电视剧 | 国产一区二区三区av电影| 欧美一区第一页| 日本熟妇色xxxxx日本免费看| 久久久久久久久久久久久久| 一区二区三区黄色| 一本色道综合久久欧美日韩精品| 日韩精品视频一区二区三区| 欧美性淫爽ww久久久久无| 日本一本二本在线观看| 丁香高清在线观看完整电影视频| 亚洲天堂a在线| 一区一区视频| av亚洲在线| 国产精品婷婷午夜在线观看| 欧美最大成人综合网| 五月婷婷六月色| 成人国产电影网| av一区观看| 亚洲av无码乱码在线观看性色 | 欧美亚洲一区二区三区四区| 各处沟厕大尺度偷拍女厕嘘嘘| av日韩国产| 亚洲大型综合色站| 国产玉足脚交久久欧美| 国产盗摄精品一区二区酒店| 亚洲国产成人av好男人在线观看| 欧美大片免费播放| v片在线观看| 一区二区三区四区不卡视频| 日韩激情视频一区二区| 少妇视频在线| 国产精品久久久久影院老司| 亚洲精品二区| 国产乱色在线观看| 一区二区三区在线观看视频| 99久久免费观看| 麻豆最新免费在线视频| 国产欧美视频一区二区| 一本一道久久a久久综合精品| 在线观看黄av| 亚洲精品国产第一综合99久久| 欧美少妇在线观看| 999av小视频在线| 色呦呦国产精品| 亚洲国产成人va在线观看麻豆| 人人玩人人添人人澡欧美| 日韩一区二区三区av| fc2成人免费视频| 伊人春色之综合网| 中文字幕在线观看亚洲| 欧美三级 欧美一级| 99精品国产在热久久下载| 国产成人一区二区在线| 97人妻一区二区精品免费视频| 国产精品中文有码| 久久久精彩视频| 在线激情小视频| 亚洲综合精品久久| 欧美激情精品久久久久久小说| 精品美女一区| 欧美一区二区三区在线观看| 9.1成人看片| 影视亚洲一区二区三区| 8x拔播拔播x8国产精品| 中文字幕网址在线| a美女胸又www黄视频久久| 日韩欧美视频一区二区三区四区| av在线官网| 91久久精品日日躁夜夜躁欧美| 91精品视频国产| 一本久久青青| 久久97精品久久久久久久不卡| 日本天堂网在线| 国产主播一区二区| 欧美三级电影在线播放| 欧美性video| 精品视频1区2区3区| 午夜男人的天堂| 亚洲成av人片一区二区密柚| 欧美一级片免费在线| 国产a级免费视频| 中文一区二区完整视频在线观看| 草草视频在线免费观看| 欧美一级免费| 亚洲欧美精品在线| 国产精品xxxx喷水欧美| 国产精品69毛片高清亚洲| 色一情一区二区三区四区| 嗯~啊~轻一点视频日本在线观看| 欧美日韩一区成人| 好吊视频在线观看| 日韩一级精品| yy111111少妇影院日韩夜片| 麻豆视频在线免费观看| 日本高清无吗v一区| 国模私拍在线观看| 黄色亚洲精品| 91亚洲va在线va天堂va国| h视频网站在线观看| 福利二区91精品bt7086| 欧美xxxxx少妇| 亚洲午夜电影| 91九色露脸| 成人在线观看免费网站| 欧美日韩中文精品| 18精品爽国产三级网站| 久久精品二区三区| 久久人人九九| 亚洲欧美小说色综合小说一区| 欧美成人伊人久久综合网| 精品亚洲乱码一区二区| 久久精品99久久久| 亚洲精品白虎| 日韩三区四区| 久久久极品av| 国产乱淫片视频| 亚洲天堂免费看| 手机在线观看日韩av| 国产精品国产三级国产在线观看| 国产精品爽爽ⅴa在线观看| 国产中文在线| 欧美亚洲动漫精品| 一级免费黄色录像| 激情成人午夜视频| 日本三级福利片| 欧美日本三级| 欧美精品成人在线| 好男人在线视频www| 午夜久久福利影院| 91av在线免费| 日韩中文字幕区一区有砖一区 | 欧美日韩一区小说| 午夜黄色福利视频| 激情偷乱视频一区二区三区| a级黄色片网站| 1313精品午夜理伦电影| 久久久久久午夜| 日韩美女一级视频| 欧美性一二三区| 男人的天堂久久久| 成人国产精品免费网站| 成人性视频欧美一区二区三区| 国产精品探花在线观看| 国产欧美婷婷中文| 日本高清成人vr专区| 亚洲国产天堂久久国产91| 欧美国产成人精品一区二区三区| 中文字幕av不卡| www.美色吧.com| 久久午夜电影| 国产资源第一页| 色综合www| 91精品视频在线| h片在线观看视频免费| 国产午夜精品视频| 国产哺乳奶水91在线播放| 婷婷激情综合网| 貂蝉被到爽流白浆在线观看 | 国产精品久久久久无码av色戒| 日本亚洲欧美天堂免费| 可以在线看黄的网站| 日韩av午夜| 成人免费观看a| 国产伦久视频在线观看| 国产精品18久久久久| 国产精品久久久久9999爆乳| 亚洲精品中文字幕99999| 国产精品久久久久久久一区探花| av文字幕在线观看| 国产偷国产偷亚洲清高网站| 国产精品女人久久久| 欧美性猛交xxxx黑人猛交| av黄色免费在线观看| caoporm超碰国产精品| 欧美三级理论片| 日韩视频二区| 亚洲小说欧美另类激情| 亚洲婷婷丁香| 国产精品久久亚洲7777| 色8久久久久| 日韩免费av在线| 黄色在线看片| 久久亚洲精品成人| 国产福利小视频在线观看| 亚洲精品按摩视频| 精品国产区一区二| 欧美三级中文字| av大全在线观看| 亚洲成人在线观看视频| 天天综合天天做| 亚洲国产精品成人综合色在线婷婷| 精品无码人妻少妇久久久久久| 久久99精品久久久久久国产越南 | av电影免费在线看| 精品国产一区二区三区久久久狼| 内衣办公室在线| 日韩av一卡二卡| 丰满人妻妇伦又伦精品国产| 欧美福利电影网| 一卡二卡三卡在线| 欧美亚洲国产一区在线观看网站 | 91精品国产综合久久久久久久| www.com亚洲| 欧美丝袜一区二区三区| 日韩精品一卡二卡| 亚洲一区成人在线| 青青草手机在线观看| 亚洲精品国产a久久久久久| 成人在线观看小视频| 亚洲色图制服诱惑| 日韩成人短视频| 一区二区三区在线播放| 一区二区在线观看免费视频| 亚洲六月丁香色婷婷综合久久| 精品国产大片大片大片| 综合欧美亚洲日本| www.毛片com| 夜夜揉揉日日人人青青一国产精品| 顶臀精品视频www| 亚洲黄色免费网站| 久久久久久久国产视频| 亚洲国产精品久久人人爱| 日韩欧美视频在线免费观看| 天天综合日日夜夜精品| 伊人手机在线视频| 欧洲一区二区三区在线| 一级黄色录像大片| 欧美一卡2卡三卡4卡5免费| wwwav在线播放| 亚洲第一区中文99精品| 亚洲色图21p| 国产亚洲一级高清| 麻豆视频在线观看免费网站| 九九久久久久久久久激情| 美女精品导航| 日韩综合在线| 手机看片日韩国产| 韩国欧美一区| www.com毛片| 美女视频一区二区| 亚洲一区二区三区三州| 成人免费黄色在线| 短视频在线观看| 国产精品乱码一区二三区小蝌蚪| √天堂中文官网8在线| 午夜精品福利久久久| 无码人妻丰满熟妇奶水区码| 欧美剧情电影在线观看完整版免费励志电影 | 五月婷婷激情综合网| 亚洲无码精品一区二区三区| 337p亚洲精品色噜噜| 人妻与黑人一区二区三区| 亚洲日本成人女熟在线观看| 日本www在线观看| 97国产一区二区精品久久呦| 国产精品毛片久久久久久久久久99999999 | 久久精品一区二区三| 欧美视频不卡中文| 国产免费av观看| 亚洲精品国产精品国产自| 2017亚洲天堂1024| 久久久女人电视剧免费播放下载| 亚洲第一影院| 国产精品美女黄网| 欧美午夜精彩| 国产人妻777人伦精品hd| 日韩国产欧美视频| 国产人成视频在线观看| 国产精品国产三级国产aⅴ原创 | 欧美一区二区三区四区视频| 日韩a级作爱片一二三区免费观看| xvideos亚洲| 最近在线中文字幕| 成人三级在线| 欧美hentaied在线观看| 精品一卡二卡三卡| 成人性生交大片免费看中文 | 国产精品久久久久久久美男 | 国产裸体歌舞团一区二区| 久久久久久久久久久国产精品| 亚洲免费资源在线播放| 午夜一级黄色片| 日韩成人av网| 视频在线这里都是精品| 91精品久久久久久久久久另类 | 一区二区三区免费在线| 亚洲欧美中文在线视频| www在线看| 亚洲精品免费网站| 久久网站免费观看| 日韩一级理论片| 久久久久久一二三区| 精品无码人妻一区二区三区| 91精品国产91综合久久蜜臀| 1769视频在线播放免费观看| 欧美中文在线视频| 欧美一区二区三区红桃小说| 欧美成人精品免费| 国产精品自拍毛片| 色婷婷在线视频观看| 欧美三片在线视频观看 | 欧美美女操人视频| 日日夜夜一区| 在线播放 亚洲| 久久精品99久久久| 天天看天天摸天天操| 欧美欧美欧美欧美| 91看片在线观看| 国产精品视频区| 欧美r级电影| 欧美美女一级片| 综合色天天鬼久久鬼色| 国产美女明星三级做爰| 欧美另类暴力丝袜| 2021年精品国产福利在线| 免费在线看黄色片| 成人免费视频免费观看| 日韩欧美亚洲国产| 亚洲护士老师的毛茸茸最新章节| 国产传媒av在线| 美女亚洲精品| 久久一区欧美| 久久久精品成人| 欧美精品在线视频| 日本h片在线观看| 精品网站在线看| 天堂蜜桃91精品| 1024手机在线观看你懂的| 欧美日韩一二区| 综合久久2019| 国产视色精品亚洲一区二区| 国产精品色网| 精品日韩在线视频| 日韩一区二区在线免费观看| 牛牛精品在线视频| 美女亚洲精品| 久久99国产精品久久| 男女免费视频网站| 国产网站欧美日韩免费精品在线观看| 欧美黄色网页| 精品国产无码在线| 成人午夜短视频| 亚洲欧美偷拍一区| xxxx欧美18另类的高清| 一区二区在线视频观看| 国产精品wwwww| 亚洲日穴在线视频| 天堂在线一二区| 成人黄色在线免费| 99riav1国产精品视频| 大胸美女被爆操| 日韩女优av电影在线观看| 一区一区三区| 欧美爱爱视频网站| 99久久免费精品| 国产精品九九九九| 91超碰中文字幕久久精品| 清纯唯美亚洲综合一区| 免费人成视频在线播放| 一本色道综合亚洲| 国产黄色在线网站| 免费电影一区| 国产成人一区在线| 免费观看日批视频| 欧美日韩成人在线视频| 国产伦一区二区三区| 国产精品19p| 欧美日韩精品一区二区三区四区| 草美女在线观看| 男插女免费视频| 国产欧美日韩卡一|