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

Redis高可用原理,這下能看懂了吧!

存儲(chǔ) 存儲(chǔ)軟件 Redis
Redis 是被廣泛使用的基礎(chǔ)軟件之一,對(duì)于架構(gòu)師和運(yùn)維人員來(lái)說(shuō),了解 Redis 的高可用方案和背后的原理,是必備的基礎(chǔ)知識(shí)。

 Redis 是被廣泛使用的基礎(chǔ)軟件之一,對(duì)于架構(gòu)師和運(yùn)維人員來(lái)說(shuō),了解 Redis 的高可用方案和背后的原理,是必備的基礎(chǔ)知識(shí)。

本文作者深入分析了 Redis 高可用的方方面面,并且做了有效總結(jié),相信對(duì)廣大讀者可以起到很好的領(lǐng)路作用。

Redis 中為了實(shí)現(xiàn)高可用采用了如下兩個(gè)方式:

  • 主從復(fù)制數(shù)據(jù)。
  • 采用哨兵監(jiān)控?cái)?shù)據(jù)節(jié)點(diǎn)的運(yùn)行情況,一旦主節(jié)點(diǎn)出現(xiàn)問(wèn)題由從節(jié)點(diǎn)頂上繼續(xù)進(jìn)行服務(wù)。

主從復(fù)制

Redis 中主從節(jié)點(diǎn)復(fù)制數(shù)據(jù)有全量復(fù)制和部分復(fù)制之分。

舊版本全量復(fù)制功能的實(shí)現(xiàn)

 

全量復(fù)制使用 Snyc 命令來(lái)實(shí)現(xiàn),其流程是:

  • 從服務(wù)器向主服務(wù)器發(fā)送 Sync 命令。
  • 主服務(wù)器在收到 Sync 命令之后,調(diào)用 Bgsave 命令生成***的 RDB 文件,將這個(gè)文件同步給從服務(wù)器,這樣從服務(wù)器載入這個(gè) RDB 文件之后,狀態(tài)就會(huì)和主服務(wù)器執(zhí)行 Bgsave 命令時(shí)候的一致。
  • 主服務(wù)器將保存在命令緩沖區(qū)中的寫(xiě)命令同步給從服務(wù)器,從服務(wù)器執(zhí)行這些命令,這樣從服務(wù)器的狀態(tài)就跟主服務(wù)器當(dāng)前狀態(tài)一致了。

舊版本全量復(fù)制功能,其***的問(wèn)題是從服務(wù)器斷線(xiàn)重連時(shí),即便在從服務(wù)器上已經(jīng)有一部分?jǐn)?shù)據(jù)了,也需要進(jìn)行全量復(fù)制,這樣做的效率很低,于是新版本的 Redis 在這部分做了改進(jìn)。

新版本全量復(fù)制功能的實(shí)現(xiàn)

新版本 Redis 使用 Psync 命令來(lái)代替 Sync 命令,該命令既可以實(shí)現(xiàn)完整全同步也可以實(shí)現(xiàn)部分同步。

復(fù)制偏移量

執(zhí)行復(fù)制的雙方,主從服務(wù)器,分別會(huì)維護(hù)一個(gè)復(fù)制偏移量:

主服務(wù)器每次向從服務(wù)器同步了 N 字節(jié)數(shù)據(jù)之后,將修改自己的復(fù)制偏移量 +N。

從服務(wù)器每次從主服務(wù)器同步了 N 字節(jié)數(shù)據(jù)之后,將修改自己的復(fù)制偏移量 +N。

復(fù)制積壓緩沖區(qū)

 

主服務(wù)器內(nèi)部維護(hù)了一個(gè)固定長(zhǎng)度的先進(jìn)先出隊(duì)列做為復(fù)制積壓緩沖區(qū),其默認(rèn)大小為 1MB。

在主服務(wù)器進(jìn)行命令傳播時(shí),不僅會(huì)將寫(xiě)命令同步到從服務(wù)器,還會(huì)將寫(xiě)命令寫(xiě)入復(fù)制積壓緩沖區(qū)。

服務(wù)器運(yùn)行 ID

每個(gè) Redis 服務(wù)器,都有其運(yùn)行 ID,運(yùn)行 ID 由服務(wù)器在啟動(dòng)時(shí)自動(dòng)生成,主服務(wù)器會(huì)將自己的運(yùn)行 ID 發(fā)送給從服務(wù)器,而從服務(wù)器會(huì)將主服務(wù)器的運(yùn)行 ID 保存起來(lái)。

從服務(wù)器 Redis 斷線(xiàn)重連之后進(jìn)行同步時(shí),就是根據(jù)運(yùn)行 ID 來(lái)判斷同步的進(jìn)度:

  • 如果從服務(wù)器上面保存的主服務(wù)器運(yùn)行 ID 與當(dāng)前主服務(wù)器運(yùn)行 ID 一致,則認(rèn)為這一次斷線(xiàn)重連連接的是之前復(fù)制的主服務(wù)器,主服務(wù)器可以繼續(xù)嘗試部分同步操作。
  • 否則,如果前后兩次主服務(wù)器運(yùn)行 ID 不相同,則認(rèn)為是完成全同步流程。

Psync 命令流程

有了前面的準(zhǔn)備,下面開(kāi)始分析 Psync 命令的流程:

  • 如果從服務(wù)器之前沒(méi)有復(fù)制過(guò)任何主服務(wù)器,或者之前執(zhí)行過(guò) slaveof no one 命令,那么從服務(wù)器就會(huì)向主服務(wù)器發(fā)送 psync ? -1 命令,請(qǐng)求主服務(wù)器進(jìn)行數(shù)據(jù)的全量同步。
  • 否則,如果前面從服務(wù)器已經(jīng)同步過(guò)部分?jǐn)?shù)據(jù),那么從服務(wù)器向主服務(wù)器發(fā)送 psync 命令,其中 runid 是上一次主服務(wù)器的運(yùn)行 id,offset 是當(dāng)前從服務(wù)器的復(fù)制偏移量。

 

前面兩種情況主服務(wù)器收到 Psync 命令之后,會(huì)出現(xiàn)以下三種可能:

  • 主服務(wù)器返回 +fullresync 回復(fù),表示主服務(wù)器要求與從服務(wù)器進(jìn)行完整的數(shù)據(jù)全量同步操作。

其中,runid 是當(dāng)前主服務(wù)器運(yùn)行 id,而 offset 是當(dāng)前主服務(wù)器的復(fù)制偏移量。

  • 如果主服務(wù)器應(yīng)答 +continue,那么表示主服務(wù)器與從服務(wù)器進(jìn)行部分?jǐn)?shù)據(jù)同步操作,將從服務(wù)器缺失的數(shù)據(jù)同步過(guò)來(lái)即可。
  • 如果主服務(wù)器應(yīng)答 -err,那么表示主服務(wù)器版本低于 2.8,識(shí)別不了 Psync 命令,此時(shí)從服務(wù)器將向主服務(wù)器發(fā)送 Sync 命令,執(zhí)行完整的全量數(shù)據(jù)同步。

哨兵機(jī)制概述

Redis 使用哨兵機(jī)制來(lái)實(shí)現(xiàn)高可用的大概工作原理是:

  • Redis 使用一組哨兵(Sentinel)節(jié)點(diǎn)來(lái)監(jiān)控主從 Redis 服務(wù)的可用性。
  • 一旦發(fā)現(xiàn) Redis 主節(jié)點(diǎn)失效,將選舉出一個(gè)哨兵節(jié)點(diǎn)作為***(Leader)。
  • 哨兵***再?gòu)氖S嗟膹?Redis 節(jié)點(diǎn)中選出一個(gè) Redis 節(jié)點(diǎn)作為新的主 Redis 節(jié)點(diǎn)對(duì)外服務(wù)。

以上將 Redis 節(jié)點(diǎn)分為兩類(lèi):

  • 哨兵節(jié)點(diǎn)(Sentinel):負(fù)責(zé)監(jiān)控節(jié)點(diǎn)的運(yùn)行情況。
  • 數(shù)據(jù)節(jié)點(diǎn):即正常服務(wù)客戶(hù)端請(qǐng)求的 Redis 節(jié)點(diǎn),有主從之分。

以上是大體的流程,這個(gè)流程需要解決以下幾個(gè)問(wèn)題:

  • 如何對(duì) Redis 數(shù)據(jù)節(jié)點(diǎn)進(jìn)行監(jiān)控?
  • 如何確定一個(gè) Redis 數(shù)據(jù)節(jié)點(diǎn)失效?
  • 如何選擇出一個(gè)哨兵***節(jié)點(diǎn)?
  • 哨兵節(jié)點(diǎn)選擇新的主 Redis 節(jié)點(diǎn)的依據(jù)是什么?

以下來(lái)逐個(gè)回答這些問(wèn)題。

三個(gè)監(jiān)控任務(wù)

哨兵節(jié)點(diǎn)通過(guò)三個(gè)定時(shí)監(jiān)控任務(wù)監(jiān)控 Redis 數(shù)據(jù)節(jié)點(diǎn)的服務(wù)可用性。

①info 命令

 

每隔 10 秒,每個(gè)哨兵節(jié)點(diǎn)都會(huì)向主、從 Redis 數(shù)據(jù)節(jié)點(diǎn)發(fā)送 info 命令,獲取新的拓?fù)浣Y(jié)構(gòu)信息。

Redis 拓?fù)浣Y(jié)構(gòu)信息包括了:

  • 本節(jié)點(diǎn)角色:主或從。
  • 主從節(jié)點(diǎn)的地址、端口信息。

這樣,哨兵節(jié)點(diǎn)就能從 info 命令中自動(dòng)獲取到從節(jié)點(diǎn)信息,因此那些后續(xù)才加入的從節(jié)點(diǎn)信息不需要顯式配置就能自動(dòng)感知。

②向 __sentinel__:hello 頻道同步信息

每隔 2 秒,每個(gè)哨兵節(jié)點(diǎn)將會(huì)向 Redis 數(shù)據(jù)節(jié)點(diǎn)的 __sentinel__:hello 頻道同步自身得到的主節(jié)點(diǎn)信息以及當(dāng)前哨兵節(jié)點(diǎn)的信息。

由于其他哨兵節(jié)點(diǎn)也訂閱了這個(gè)頻道,因此實(shí)際上這個(gè)操作可以交換哨兵節(jié)點(diǎn)之間關(guān)于主節(jié)點(diǎn)以及哨兵節(jié)點(diǎn)的信息。

 

這一操作實(shí)際上完成了兩件事情:

  • 發(fā)現(xiàn)新的哨兵節(jié)點(diǎn):如果有新的哨兵節(jié)點(diǎn)加入,此時(shí)保存下來(lái)這個(gè)新哨兵節(jié)點(diǎn)的信息,后續(xù)與該哨兵節(jié)點(diǎn)建立連接。
  • 交換主節(jié)點(diǎn)的狀態(tài)信息,作為后續(xù)客觀(guān)判斷主節(jié)點(diǎn)下線(xiàn)的依據(jù)。

③向數(shù)據(jù)節(jié)點(diǎn)做心跳探測(cè)

 

每隔 1 秒,每個(gè)哨兵節(jié)點(diǎn)向主、從數(shù)據(jù)節(jié)點(diǎn)以及其他 Sentinel 節(jié)點(diǎn)發(fā)送 Ping 命令做心跳探測(cè),這個(gè)心跳探測(cè)是后續(xù)主觀(guān)判斷數(shù)據(jù)節(jié)點(diǎn)下線(xiàn)的依據(jù)。

主觀(guān)下線(xiàn)和客觀(guān)下線(xiàn)

①主觀(guān)下線(xiàn)

上面三個(gè)監(jiān)控任務(wù)中的第三個(gè)探測(cè)心跳任務(wù),如果在配置的 down-after-milliseconds 之后沒(méi)有收到有效回復(fù),那么就認(rèn)為該數(shù)據(jù)節(jié)點(diǎn)“主觀(guān)下線(xiàn)(sdown)”。

 

為什么稱(chēng)為“主觀(guān)下線(xiàn)”?因?yàn)樵谝粋€(gè)分布式系統(tǒng)中,有多個(gè)機(jī)器在一起聯(lián)動(dòng)工作,網(wǎng)絡(luò)可能出現(xiàn)各種狀況,僅憑一個(gè)節(jié)點(diǎn)的判斷還不足以認(rèn)為一個(gè)數(shù)據(jù)節(jié)點(diǎn)下線(xiàn)了,這就需要后面的“客觀(guān)下線(xiàn)”。

②客觀(guān)下線(xiàn)

 

當(dāng)一個(gè)哨兵節(jié)點(diǎn)認(rèn)為主節(jié)點(diǎn)主觀(guān)下線(xiàn)時(shí),該哨兵節(jié)點(diǎn)需要通過(guò)”sentinel is-master-down-by addr”命令向其他哨兵節(jié)點(diǎn)咨詢(xún)?cè)撝鞴?jié)點(diǎn)是否下線(xiàn)了,如果有超過(guò)半數(shù)的哨兵節(jié)點(diǎn)都回答了下線(xiàn),此時(shí)認(rèn)為主節(jié)點(diǎn)“客觀(guān)下線(xiàn)”。

選舉哨兵***

當(dāng)主節(jié)點(diǎn)客觀(guān)下線(xiàn)時(shí),需要選舉出一個(gè)哨兵節(jié)點(diǎn)做為哨兵***,以完成后續(xù)選出新的主節(jié)點(diǎn)的工作。

這個(gè)選舉的大體思路是:

  • 每個(gè)哨兵節(jié)點(diǎn)通過(guò)向其他哨兵節(jié)點(diǎn)發(fā)送”sentinel is-master-down-by addr”命令來(lái)申請(qǐng)成為哨兵***。
  • 而每個(gè)哨兵節(jié)點(diǎn)在收到一個(gè)”sentinel is-master-down-by addr”命令時(shí),只允許給***個(gè)節(jié)點(diǎn)投票,其他節(jié)點(diǎn)的該命令都會(huì)被拒絕。
  • 如果一個(gè)哨兵節(jié)點(diǎn)收到了半數(shù)以上的同意票,則成為哨兵***。
  • 如果前面三步在一定時(shí)間內(nèi)都沒(méi)有選出一個(gè)哨兵***,將重新開(kāi)始下一次選舉。

可以看到,這個(gè)選舉***的流程很像 Raft 中選舉 Leader 的流程。

選出新的主節(jié)點(diǎn)

 

在剩下的 Redis 從節(jié)點(diǎn)中,按照以下順序來(lái)選擇新的主節(jié)點(diǎn):

  • 過(guò)濾掉“不健康”的數(shù)據(jù)節(jié)點(diǎn):比如主觀(guān)下線(xiàn)、斷線(xiàn)的從節(jié)點(diǎn)、五秒內(nèi)沒(méi)有回復(fù)過(guò)哨兵節(jié)點(diǎn) Ping 命令的節(jié)點(diǎn)、與主節(jié)點(diǎn)失聯(lián)的從節(jié)點(diǎn)。
  • 選擇 Slave-Priority(從節(jié)點(diǎn)優(yōu)先級(jí))***的從節(jié)點(diǎn),如果存在則返回,不存在則繼續(xù)后面的流程。
  • 選擇復(fù)制偏移量***的從節(jié)點(diǎn),這意味著這個(gè)從節(jié)點(diǎn)上面的數(shù)據(jù)最完整,如果存在則返回,不存在則繼續(xù)后面的流程。
  • 到了這里,所有剩余從節(jié)點(diǎn)的狀態(tài)都是一樣的,選擇 runid 最小的從節(jié)點(diǎn)。

提升新的主節(jié)點(diǎn)

 

選擇了新的主節(jié)點(diǎn)之后,還需要***的流程讓該節(jié)點(diǎn)成為新的主節(jié)點(diǎn):

  • 哨兵***向上一步選出的從節(jié)點(diǎn)發(fā)出“slaveof no one”命令,讓該節(jié)點(diǎn)成為主節(jié)點(diǎn)。
  • 哨兵***向剩余的從節(jié)點(diǎn)發(fā)送命令,讓它們成為新主節(jié)點(diǎn)的從節(jié)點(diǎn)。
  • 哨兵節(jié)點(diǎn)集合會(huì)將原來(lái)的主節(jié)點(diǎn)更新為從節(jié)點(diǎn),當(dāng)其恢復(fù)之后命令它去復(fù)制新的主節(jié)點(diǎn)的數(shù)據(jù)。

作者:codedump

簡(jiǎn)介:codedump.info 博主,多年從事互聯(lián)網(wǎng)服務(wù)器后臺(tái)開(kāi)發(fā)工作。可訪(fǎng)問(wèn)作者博客 https://www.codedump.info 更多文章。

 

責(zé)任編輯:武曉燕 來(lái)源: 高可用架構(gòu)
相關(guān)推薦

2013-09-22 10:34:08

碼農(nóng)機(jī)器學(xué)習(xí)算法

2019-03-26 11:15:34

AI機(jī)器學(xué)習(xí)人工智能

2024-11-01 05:10:00

2017-02-22 15:04:52

2020-02-28 08:00:35

單點(diǎn)登錄系統(tǒng)

2023-01-26 00:22:01

分布式架構(gòu)大文件

2018-12-24 08:46:52

Kubernetes對(duì)象模型

2022-07-04 08:31:42

GitOpsGit基礎(chǔ)設(shè)施

2019-12-27 09:47:05

大數(shù)據(jù)TomcatWeb

2019-10-08 10:10:52

中臺(tái) IT后臺(tái)

2020-12-01 09:03:22

分庫(kù)分表MySQL

2020-02-15 17:16:05

Kubernetes容器

2019-11-18 10:38:03

線(xiàn)程池Java框架

2020-01-21 10:16:15

Kubernetes教程容器

2019-09-05 14:21:22

JavaNIOBIO

2019-10-10 11:10:04

SpringBoot異步編程

2022-06-21 07:51:06

Redis高可用哨兵進(jìn)程

2018-11-19 08:34:22

Hadoop架構(gòu)HDFS

2018-11-21 09:40:57

熔斷實(shí)踐AOP

2018-11-21 15:40:08

HTTP協(xié)議前端
點(diǎn)贊
收藏

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

亚洲欧美精品在线| 亚洲h精品动漫在线观看| 91精品久久久久久久久久久久久久| www.xx日本| gogo大尺度成人免费视频| 一区二区三区产品免费精品久久75| 久久人人97超碰人人澡爱香蕉| 中文字幕欧美色图| 国自产拍偷拍福利精品免费一| 亚洲精品少妇网址| 亚洲女人在线观看| 亚洲最新无码中文字幕久久| 亚洲私人黄色宅男| 久久www免费人成精品| 在线视频播放大全| 99国内精品| 久久精品成人动漫| 中文字幕狠狠干| 欧美9999| 欧美午夜精品久久久久久超碰| 99国产精品白浆在线观看免费| 久色视频在线| 成人黄页在线观看| 成人免费在线视频网址| 国产www在线| 亚洲国产一区二区三区高清 | 国产精品久久AV无码| 日日夜夜亚洲| 在线观看免费一区| 日韩在线综合网| 免费在线观看av电影| 国产精品理论片| 欧美日韩在线一二三| 丰满熟女一区二区三区| 激情图片小说一区| 国产精品免费观看在线| 日韩精品一区二区亚洲av| 亚洲青涩在线| 国内精品小视频| 国产精品成人免费观看| 91一区在线| 国产一区二区三区欧美| 少妇精品一区二区三区| 精品一区二区男人吃奶| 亚洲第一免费网站| 免费在线观看日韩av| 狠狠久久伊人中文字幕| 欧洲一区在线电影| 99久久激情视频| 蜜桃av.网站在线观看| 亚洲国产欧美另类丝袜| www.日本三级| 超级碰碰不卡在线视频| 亚洲综合色网站| 97碰在线视频| 91九色在线播放| 精品福利在线看| 99精品视频在线看| 婷婷综合六月| 欧美日韩在线一区二区| 五月天中文字幕在线| 亚洲影视资源| 日韩精品中文字幕一区二区三区 | 成人台湾亚洲精品一区二区| 日韩视频在线永久播放| 四虎成人免费视频| 牛牛精品成人免费视频| 日韩国产中文字幕| 国产在线综合视频| 欧美3p视频| 欧美日韩国产二区| 国产成人无码一区二区三区在线| 国产亚洲欧洲| 国产精品成人播放| 国产精品欧美激情在线| 国产suv一区二区三区88区| 国产精品麻豆免费版| 午夜在线视频免费| 欧美国产日韩在线观看| 一区二区三区四区免费观看| 麻豆av在线免费观看| 欧美性高潮床叫视频| 欧美成人福利在线观看| 一区二区免费| 亚洲欧洲日产国码av系列天堂| 大胸美女被爆操| 欧美精品日本| 欧洲s码亚洲m码精品一区| 中文字幕日韩第一页| 国产高清精品在线| 欧美日韩精品综合| 二区三区四区高清视频在线观看| 婷婷亚洲久悠悠色悠在线播放| 黄色一级二级三级| 亚洲精品v亚洲精品v日韩精品| 亚洲精品一区二区三区婷婷月| 久久久精品少妇| 亚洲乱码视频| 国产一区二区香蕉| 深夜福利在线看| 国产清纯在线一区二区www| 992tv成人免费观看| 成人一区福利| 欧美成人女星排名| 能直接看的av| 国产精品久久久久久模特| 成人国产精品久久久久久亚洲| 无码国产精品一区二区免费16| 国产精品三级视频| 国产黄色一级网站| 视频一区中文字幕精品| 亚洲片av在线| 国产一级片网址| 久久99精品视频| 麻豆蜜桃91| 在线观看午夜av| 欧美日韩一区中文字幕| 黄色正能量网站| 影院欧美亚洲| 99久久99久久| 黄色在线视频网站| 一本色道久久综合亚洲精品按摩| 国内自拍偷拍视频| 国产精品二区不卡| 国产精品久久久久免费a∨大胸| 天天插天天干天天操| 亚洲精品国产一区二区精华液 | 中文字幕欧美激情| 妞干网在线观看视频| 成人永久在线| 日韩中文字幕精品视频| 无码人妻丰满熟妇区bbbbxxxx | 日韩视频永久免费| 亚洲欧美精品aaaaaa片| 青青草精品视频| 日本精品一区二区三区不卡无字幕| av免费不卡| 日韩久久久精品| 欧美精品一区二区蜜桃| 国产一区亚洲一区| 国产又粗又爽又黄的视频| 韩国理伦片久久电影网| 夜夜嗨av一区二区三区免费区 | 亚洲第一色中文字幕| 精品欧美一区二区久久久久| 精品一区二区三区免费观看| 亚洲欧洲精品在线| 日本成人一区二区| y97精品国产97久久久久久| 中文字幕一区二区久久人妻| 亚洲国产精华液网站w| 一区二区三区 欧美| 日韩欧美1区| 国产主播精品在线| 黄视频网站在线看| 欧美mv日韩mv国产网站app| 久久久美女视频| 成人18精品视频| 日韩欧美一区二| 久久99免费视频| 国产精品福利在线观看| av在线电影播放| 7777精品伊人久久久大香线蕉超级流畅 | 日本午夜精品久久久久| 色偷偷偷亚洲综合网另类| av老司机久久| 亚洲国产欧美一区二区三区丁香婷| 好男人香蕉影院| 久久久久久9| 亚洲午夜精品久久| 秋霞一区二区| 97视频在线观看成人| 精品电影在线| 欧美理论片在线| 国产精品18p| 久久色.com| 手机免费看av网站| 亚洲一级黄色| 日产精品高清视频免费| 台湾天天综合人成在线| 欧美激情第一页xxx| 国产资源在线看| 91精品国产综合久久福利软件 | 国产福利视频在线| 精品电影一区二区三区 | 19禁羞羞电影院在线观看| 亚洲欧美国内爽妇网| 国产精品亚洲lv粉色| 婷婷六月综合网| 一区二区三区在线播放视频| 成人午夜视频福利| 激情内射人妻1区2区3区| 亚洲澳门在线| 麻豆成人在线播放| 我要色综合中文字幕| 国产www精品| 成人av免费| 亚洲视频第一页| 亚洲成熟女性毛茸茸| 色88888久久久久久影院按摩| 老司机成人免费视频| 久久人人爽人人爽| 亚洲天堂2018av| 国产一区导航| 国产精品国三级国产av| 清纯唯美综合亚洲| 精品伦精品一区二区三区视频| 日韩精品第二页| 日本精品久久久| 亚洲七七久久综合桃花剧情介绍| 国产一区二区三区在线看| 丰满少妇被猛烈进入| 欧美日韩五月天| 久久久久久少妇| 亚洲第一搞黄网站| 国产高潮国产高潮久久久91 | 人人狠狠综合久久亚洲| 黄色一级片在线看| 中文字幕一区二区三三| 亚洲国产欧洲综合997久久| 日韩精品丝袜美腿| 国产成人av一区二区三区| 欧美美女福利视频| 国产精品福利观看| 成人美女大片| 97精品久久久中文字幕免费| 日本在线观看大片免费视频| www.久久撸.com| 91在线不卡| 国产一区二区成人| 激情福利在线| 亚洲人永久免费| 精品电影在线| 亚洲男人天堂手机在线| 日韩在线免费看| 亚洲国产又黄又爽女人高潮的| www.色亚洲| 日韩欧美黄色影院| 亚洲AV无码精品色毛片浪潮| 日韩一区二区麻豆国产| av av片在线看| 欧美一级日韩不卡播放免费| 国产日韩免费视频| 欧美丰满少妇xxxxx高潮对白| 亚洲一区二区人妻| 欧美人牲a欧美精品| 国产理论片在线观看| 欧美一级二级在线观看| 精品区在线观看| 日韩美女主播在线视频一区二区三区 | 日韩美女一区二区三区四区| 国产乱色精品成人免费视频| 制服丝袜成人动漫| 国产精品久久综合青草亚洲AV| 欧美精品黑人性xxxx| 国产在成人精品线拍偷自揄拍| 69堂亚洲精品首页| 亚洲免费黄色片| 亚洲高清不卡av| 欧美日本网站| 中文亚洲视频在线| 国产激情视频在线| 欧美精品999| 芒果视频成人app| 国产精品美女无圣光视频| 精品国产三区在线| 国产欧美亚洲日本| 精品一区在线| 一区二区三区四区欧美| 欧美91福利在线观看| 大陆极品少妇内射aaaaa| 久久一本综合频道| mm131亚洲精品| 高清国产一区二区| 国产国语性生话播放| 欧美激情一区三区| 破处女黄色一级片| 欧美午夜视频一区二区| 在线观看国产一区二区三区| 日韩欧美123| 三级在线播放| 久久电影一区二区| 蜜桃av在线| 成人免费看黄网站| 色狼人综合干| 中文字幕乱码一区二区三区 | 五月婷婷丁香综合网| 国产一区二区三区四| 欧美高清性xxxx| 亚洲色大成网站www久久九九| 伊人久久综合视频| 欧美美女网站色| 凸凹人妻人人澡人人添| 中文字幕av一区二区| 第四色日韩影片| 国产美女久久精品香蕉69| 激情小说一区| 一区二区三区视频在线播放| 日韩网站在线| 欧美激情国内自拍| 久久免费偷拍视频| 久久久99精品| 欧美区在线观看| 精品欧美不卡一区二区在线观看| 欧美激情精品久久久久久久变态 | 天堂影院一区二区| 午夜性福利视频| 中文字幕中文字幕中文字幕亚洲无线| 国产精品6666| 欧美一区二区精品在线| 国产鲁鲁视频在线观看免费| 97视频在线看| 国产精品亚洲四区在线观看| 日本三级中国三级99人妇网站| 精品1区2区3区4区| 男人午夜视频在线观看| 国产色婷婷亚洲99精品小说| 国产一级在线视频| 在线综合亚洲欧美在线视频| 成人不用播放器| 欧美夜福利tv在线| 国产欧美三级电影| 日韩欧美视频免费在线观看| 久久av中文字幕片| 国产又粗又猛又爽又黄av| 欧美日韩在线影院| 无码国产精品一区二区免费16| 欧美黄色性视频| 深夜激情久久| 久久久久久久香蕉| 国产一区二区三区四| 色欲一区二区三区精品a片| 欧美日韩一区二区电影| 成年网站在线| 国产精品久久久久秋霞鲁丝| 最近国产精品视频| 欧美性久久久久| 久久久一区二区三区| 久久久久久久久久久久久av| 亚洲黄色成人网| 日本三级一区| 久久综合中文色婷婷| 国产欧美三级| 人妻体内射精一区二区| 欧美视频免费在线| 欧美成人免费| 日本精品一区二区三区在线播放视频| 亚洲精品亚洲人成在线观看| 久久无码高潮喷水| 久久久99久久精品欧美| 自拍偷拍校园春色| 一道本无吗dⅴd在线播放一区| 国产成人77亚洲精品www| 亚洲免费久久| 国产一区日韩二区欧美三区| 欧美黑人一级片| 亚洲第一精品久久忘忧草社区| 免费h在线看| 日本免费高清一区二区| 麻豆国产精品视频| 永久免费看黄网站| 亚洲精品国产欧美| 欧美成人影院| 一区二区三区四区视频在线观看| 国产一区二区三区高清播放| 国产五月天婷婷| 日韩精品极品在线观看| 日韩三区免费| 亚洲第一综合网站| 成人国产在线观看| 亚洲大尺度在线观看| 久久久极品av| 欧美电影完整版在线观看| 亚洲中文字幕久久精品无码喷水| 国产精品狼人久久影院观看方式| 国产www免费观看| 91高清免费在线观看| 成人在线免费视频观看| 欧美体内she精高潮| 精品久久久久久久久久| www.国产精品.com| 波多野结衣成人在线| 亚洲综合电影一区二区三区| 老司机深夜福利网站| 精品处破学生在线二十三| 四虎4545www精品视频| 特级黄色录像片| 久久亚洲一区二区三区明星换脸| 91久久精品国产91性色69| 久久欧美在线电影| 日韩精品dvd| 国产+高潮+白浆+无码| 欧美亚洲国产一区二区三区 | 电影av一区| 国产精华一区| 青青国产91久久久久久| 日本一区二区网站| 色妞欧美日韩在线| 特黄特色欧美大片| 中文字幕第三区|