国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

一篇帶給你Zookeeper教程:入門(mén)篇

開(kāi)發(fā) 架構(gòu)
對(duì)于Zookeeper,其官方文檔上的解釋是:它是一個(gè)分布式服務(wù)框架,是Apache Hadoop 的一個(gè)子項(xiàng)目,它主要是用來(lái)解決分布式應(yīng)用中經(jīng)常遇到的一些數(shù)據(jù)管理問(wèn)題。

前言

在分布式系統(tǒng)中,注冊(cè)中心充當(dāng)著重要角色,是服務(wù)發(fā)現(xiàn)、客戶(hù)端負(fù)載均衡中不可缺少的一員。注冊(cè)中心除了能夠?qū)崿F(xiàn)基本的功能外,它的穩(wěn)定性、可用性和健壯性對(duì)整個(gè)分布式系統(tǒng)的流暢運(yùn)行影響重大。dubbo作為國(guó)內(nèi)一款主流的分布式系統(tǒng),支持的注冊(cè)中心有zookeeper、nacos和redis等第三方中間件。

高并發(fā)分布式開(kāi)發(fā)技術(shù)體系已然非常的龐大,前段時(shí)間一直在準(zhǔn)備找工作,參加面試,通過(guò)面試的情況可以發(fā)現(xiàn)RPC、Dubbo、zookeeper、nacos、分布式、微服務(wù)等這些已經(jīng)成為了找工作的最基礎(chǔ)的技能要求了。

之前有篇文章介紹到了如何使用nacos作為注冊(cè)中心:SpringCloud:搭建Nacos服務(wù)以及服務(wù)發(fā)現(xiàn)。其實(shí)不僅僅nacos可以作為注冊(cè)中心,zookeeper也可以作為注冊(cè)中心使用。但是Zookeeper其實(shí)不僅僅可以作為注冊(cè)中心。

對(duì)于Zookeeper,其官方文檔上的解釋是:它是一個(gè)分布式服務(wù)框架,是Apache Hadoop 的一個(gè)子項(xiàng)目,它主要是用來(lái)解決分布式應(yīng)用中經(jīng)常遇到的一些數(shù)據(jù)管理問(wèn)題,如:統(tǒng)一命名服務(wù)、狀態(tài)同步服務(wù)、集群管理、分布式應(yīng)用配置項(xiàng)的管理等。可以理解為zookeeper是文件系統(tǒng)+監(jiān)聽(tīng)通知機(jī)制。

今天這篇文章就一起來(lái)學(xué)習(xí)學(xué)習(xí)Zookeeper,我自己也是學(xué)習(xí)的過(guò)程!

什么是zookeeper

隨著系統(tǒng)應(yīng)用的拓展和數(shù)據(jù)量的保證,我們的系統(tǒng)經(jīng)常會(huì)遇到這些情況:

  • 怎么保證一個(gè)服務(wù)器集群中的所有服務(wù)器保持共享的配置信息的一致性?
  • 如果服務(wù)器集群中有一臺(tái)機(jī)器掛掉了,其他機(jī)器如何感知到這一變化并接管任務(wù)?
  • 對(duì)于分布式系統(tǒng),如何高效協(xié)同多臺(tái)服務(wù)對(duì)同一網(wǎng)絡(luò)文件進(jìn)行寫(xiě)操作并保持一致性?
  • 如何做到不重啟集群而完成機(jī)器的添加?
  • ........

為了解決上述的問(wèn)題,就需要一個(gè)類(lèi)似于線程協(xié)同機(jī)制的工具,讓各個(gè)服務(wù)進(jìn)行協(xié)同工作。而zookeeper就是這樣的一類(lèi)工具。

上面說(shuō)到對(duì)于Zookeeper,其官方文檔上的解釋是:它是一個(gè)分布式服務(wù)框架,是Apache Hadoop 的一個(gè)子項(xiàng)目,它主要是用來(lái)解決分布式應(yīng)用中經(jīng)常遇到的一些數(shù)據(jù)管理問(wèn)題,如:統(tǒng)一命名服務(wù)、狀態(tài)同步服務(wù)、集群管理、分布式應(yīng)用配置項(xiàng)的管理等。

所以可以理解為zookeeper是一種可以用于分布式應(yīng)用的高性能協(xié)調(diào)服務(wù),它的數(shù)據(jù)是存于內(nèi)存中的,并且持久化實(shí)現(xiàn)在日志中。而它的內(nèi)存結(jié)構(gòu)是類(lèi)似于樹(shù)形結(jié)構(gòu),具有高吞吐低延遲的特點(diǎn)。zookeeper不僅僅可以幫助我們實(shí)現(xiàn)分布式統(tǒng)一配置中心,服務(wù)注冊(cè),分布式鎖等,它們維護(hù)內(nèi)存中的狀態(tài)圖像,以及持久性存儲(chǔ)中的事務(wù)日志和快照。只要大多數(shù)服務(wù)器可用,ZooKeeper服務(wù)就可用。客戶(hù)端連接到單個(gè)ZooKeeper服務(wù)器。客戶(hù)端維護(hù)TCP連接,通過(guò)該連接發(fā)送請(qǐng)求,獲取響應(yīng),獲取監(jiān)視事件以及發(fā)送tick。如果與服務(wù)器的TCP連接中斷,則客戶(hù)端將連接到其他服務(wù)器。所以可以簡(jiǎn)單地認(rèn)為zookeeper=文件系統(tǒng)+監(jiān)聽(tīng)通知機(jī)制。

我們還可以這樣理解:zookeeper的中文意思就是動(dòng)物園管理員(zoom+keeper)。動(dòng)物園管理員的作用就是負(fù)責(zé)管理動(dòng)物園里面的動(dòng)物,讓它們井然有序。而zookeeper是apache下的開(kāi)源項(xiàng)目,在apache下的很多開(kāi)源項(xiàng)目其實(shí)都是以動(dòng)物作為圖標(biāo)的,比如Hadoop(大象),Hive(蜜蜂),Pig(小豬)、tomcat(貓)。

所以可以記憶成apache下的項(xiàng)目就是動(dòng)物園,而zookeeper就是負(fù)責(zé)管理這些動(dòng)物(開(kāi)源項(xiàng)目)的動(dòng)物管理員。

zookeeper教程:入門(mén)篇

zookeeper的數(shù)據(jù)結(jié)構(gòu)

zookeeper 會(huì)維護(hù)一個(gè)具有層次關(guān)系的數(shù)據(jù)結(jié)構(gòu),它非常類(lèi)似于一個(gè)標(biāo)準(zhǔn)的文件系統(tǒng):

zookeeper教程:入門(mén)篇

上圖中的樹(shù)形結(jié)構(gòu)中的每個(gè)節(jié)點(diǎn)(目錄項(xiàng)),比如NameService 都被稱(chēng)作為 znode(目錄節(jié)點(diǎn))。zonde通過(guò)路徑引用,路徑必須是絕對(duì)的,因此他們必須由斜杠字符來(lái)開(kāi)頭。除此以外,它們必須是唯一的,也就是說(shuō)每一個(gè)路徑只有一個(gè)表示,因此這些路徑不能改變。在zookeeper中,路徑由Unicode字符串組成,并且有一些限制。字符串"/ZooKeeper"用以保存管理信息,比如關(guān)鍵配額信息。

znode同時(shí)具有文件和目錄兩種特點(diǎn)。既像文件一樣維護(hù)著數(shù)據(jù)、元信息、訪問(wèn)控制列表)、時(shí)間戳等數(shù)據(jù)結(jié)構(gòu),又可以像目錄一樣可以作為路徑標(biāo)識(shí)的一部分,能夠自由的增加、刪除znode。

每個(gè)znode都是由三部分組成:

  • stat:此為狀態(tài)信息, 描述該znode的版本, 權(quán)限等信息
  • data:與該znode關(guān)聯(lián)的數(shù)據(jù)
  • children:該znode下的子節(jié)點(diǎn)

需要注意的是同一個(gè)節(jié)點(diǎn)下的子節(jié)點(diǎn)名稱(chēng)不能相同,且命名是有規(guī)范的,它的路徑是沒(méi)有相對(duì)路徑的概念的,都是絕對(duì)路徑,任何開(kāi)始都以"/"開(kāi)始,最后就是,它存放數(shù)據(jù)的大小是有限制的。

zookeeper的節(jié)點(diǎn)類(lèi)型

zookeeper中的節(jié)點(diǎn)有兩種,分別為臨時(shí)節(jié)點(diǎn)(Ephemeral Node)和永久節(jié)點(diǎn)(Persistent Node)。節(jié)點(diǎn)的類(lèi)型在創(chuàng)建時(shí)即被確定,并且不能改變。

兩種節(jié)點(diǎn)的區(qū)別在于是否依賴(lài)于會(huì)話(huà)(Session)而生存。客戶(hù)端和ZooKeeper服務(wù)器的一次連接稱(chēng)為一次會(huì)話(huà)。客戶(hù)端靠與服務(wù)器建立一個(gè)TCP的長(zhǎng)連接來(lái)維持一個(gè)會(huì)話(huà),客戶(hù)端在啟動(dòng)的時(shí)候首先會(huì)與服務(wù)器建立一個(gè)TCP連接,通過(guò)這個(gè)連接客戶(hù)端能夠通過(guò)心跳檢測(cè)與服務(wù)器保持有效的會(huì)話(huà),也能向ZooKeeper服務(wù)器發(fā)送請(qǐng)求并獲得響應(yīng)。

(1)臨時(shí)節(jié)點(diǎn):該節(jié)點(diǎn)的生命周期依賴(lài)于創(chuàng)建它們的會(huì)話(huà)。一旦會(huì)話(huà)結(jié)束,臨時(shí)節(jié)點(diǎn)將被自動(dòng)刪除,當(dāng)然也可以手動(dòng)刪除。雖然每個(gè)臨時(shí)的Znode都會(huì)綁定到一個(gè)客戶(hù)端會(huì)話(huà),但他們對(duì)所有的客戶(hù)端還是可見(jiàn)的。另外,zookeeper的臨時(shí)節(jié)點(diǎn)不允許擁有子節(jié)點(diǎn)。臨時(shí)節(jié)點(diǎn)又可以細(xì)分為:臨時(shí)目錄節(jié)點(diǎn)和臨時(shí)順序編號(hào)目錄節(jié)點(diǎn)。

  • 臨時(shí)目錄節(jié)點(diǎn)(EPHEMERAL):客戶(hù)端與zookeeper斷開(kāi)連接后,該節(jié)點(diǎn)被刪除。
  • 臨時(shí)順序編號(hào)目錄節(jié)點(diǎn)(EPHEMERAL_SEQUENTIAL):客戶(hù)端與zookeeper斷開(kāi)連接后,該節(jié)點(diǎn)被刪除,只是Zookeeper給該節(jié)點(diǎn)名稱(chēng)進(jìn)行順序編號(hào)。

(2)永久節(jié)點(diǎn):該節(jié)點(diǎn)的生命周期不依賴(lài)于會(huì)話(huà),并且只有在客戶(hù)端執(zhí)行刪除操作的時(shí)候,他們才能被刪除。臨時(shí)節(jié)點(diǎn)又可以細(xì)分為:持久目錄節(jié)點(diǎn)和持久順序編號(hào)目錄節(jié)點(diǎn)。

  • 持久化目錄節(jié)點(diǎn)(PERSISTENT):客戶(hù)端與zookeeper斷開(kāi)連接后,該節(jié)點(diǎn)依舊存在。
  • 持久化順序編號(hào)目錄節(jié)點(diǎn)(PERSISTENT_SEQUENTIAL):客戶(hù)端與zookeeper斷開(kāi)連接后,該節(jié)點(diǎn)依舊存在,只是zookeeper給該節(jié)點(diǎn)名稱(chēng)進(jìn)行順序編號(hào)。

上面的分類(lèi)有個(gè)概念叫順序節(jié)點(diǎn):在創(chuàng)建節(jié)點(diǎn)的時(shí)候,用戶(hù)可以請(qǐng)求在zooKeeper的路徑結(jié)尾添加一個(gè)遞增的計(jì)數(shù)。這個(gè)計(jì)數(shù)對(duì)于此節(jié)點(diǎn)的父節(jié)點(diǎn)來(lái)說(shuō)是唯一的,當(dāng)客戶(hù)端請(qǐng)求創(chuàng)建這個(gè)節(jié)點(diǎn)后,zookeeper會(huì)根據(jù)父節(jié)點(diǎn)的zxid狀態(tài),為這個(gè)節(jié)點(diǎn)編寫(xiě)一個(gè)全目錄唯一的編號(hào),并且這個(gè)編號(hào)只會(huì)一直增長(zhǎng)。這樣的節(jié)點(diǎn)稱(chēng)為順序節(jié)點(diǎn)。

這上面又提到了一個(gè)概念叫zxid:對(duì)于改變zookeeper節(jié)點(diǎn)狀態(tài)的每一個(gè)操作都將使這個(gè)節(jié)點(diǎn)接收到一個(gè)Zxid格式的時(shí)間戳,并且這個(gè)時(shí)間戳全局有序。可以理解為每個(gè)改變對(duì)節(jié)點(diǎn)的操作都會(huì)產(chǎn)生一個(gè)唯一的事務(wù)id叫做Zxid。如果Zxid1的值小于Zxid2的值,那么就可以認(rèn)為Zxid1所對(duì)應(yīng)的事件發(fā)生在Zxid2所對(duì)應(yīng)的事件之前。其實(shí),zookeeper的每個(gè)節(jié)點(diǎn)都維護(hù)著兩個(gè)Zxid值,分別是:cZxid、mZxid。

  • cZxid:指的是節(jié)點(diǎn)的創(chuàng)建時(shí)間所對(duì)應(yīng)的Zxid格式時(shí)間戳。
  • mZxid:指的是節(jié)點(diǎn)的修改時(shí)間所對(duì)應(yīng)的Zxid格式時(shí)間戳。

實(shí)現(xiàn)中Zxid是一個(gè)64位的數(shù)字,它高32位是epoch(投票)用來(lái)標(biāo)識(shí)Leader關(guān)系是否改變,每次一個(gè)Leader被選出來(lái),它都會(huì)有一個(gè)新的epoch。而第32位就是個(gè)遞增計(jì)數(shù)。

zookeeper的特點(diǎn)

1、有序性

zookeeper提供了多種方式跟蹤時(shí)間,zookeeper給每個(gè)更新貼上一個(gè)數(shù)字(前面說(shuō)的zxid),這個(gè)數(shù)字反映了所有zookeeper事務(wù)的順序,嚴(yán)格的順序意味著可以在客戶(hù)機(jī)上實(shí)現(xiàn)復(fù)雜的同步。除了上面說(shuō)到的zxid,還有version、zoo.cfg中ticks配置。

version numbers(版本號(hào)):版本號(hào)是用來(lái)記錄節(jié)點(diǎn)數(shù)據(jù)或者是節(jié)點(diǎn)的子節(jié)點(diǎn)列表或者是權(quán)限信息的修改次數(shù)。如果一個(gè)節(jié)點(diǎn)的version是1,那就代表說(shuō)這個(gè)節(jié)點(diǎn)從創(chuàng)建以來(lái)被修改了一次。

每個(gè)節(jié)點(diǎn)維護(hù)著三個(gè)版本號(hào),他們分別為:

  • version:節(jié)點(diǎn)數(shù)據(jù)版本號(hào)。
  • cversion:子節(jié)點(diǎn)版本號(hào)。
  • aversion:節(jié)點(diǎn)所擁有的ACL版本號(hào)。

對(duì)節(jié)點(diǎn)的寫(xiě)請(qǐng)求都會(huì)導(dǎo)致該節(jié)點(diǎn)的3種版本號(hào)增加,原理和樂(lè)觀鎖差不多。

ticks :zoo.cfg文件中的配置。當(dāng)使用多服務(wù)器zookeeper時(shí),服務(wù)器使用一個(gè)“滴答”來(lái)定義事件的時(shí)間,如狀態(tài)上傳,會(huì)話(huà)超時(shí)等,它通過(guò)最小會(huì)話(huà)超時(shí)(默認(rèn)是滴答時(shí)間x2)間接公開(kāi),如果客戶(hù)端請(qǐng)求超過(guò)這個(gè)時(shí)間,那客戶(hù)端就不再能連接上服務(wù)器端。

real time:zookeeper并不使用真實(shí)時(shí)間。

所以可以理解為zookeeper是一個(gè)協(xié)調(diào)者,使得一些交互連接有序進(jìn)行!

速度快。

前面提到了zookeeper的數(shù)據(jù)加載在內(nèi)存中,所以它具有高吞吐和低延遲的效果。并且以讀取為事務(wù)速度尤其快,而且操作的znode大小限制在1m。正是這些特點(diǎn),使得zookeeper可以適用于大型的分布式系統(tǒng)。

2、可復(fù)制

zookeeper的數(shù)據(jù)是可復(fù)制,可備份的。zookeeper可以快速地搭建一個(gè)集群,內(nèi)部自帶了這樣的一些工具與機(jī)制,我們只需要設(shè)置一些配置即可,保證服務(wù)可靠,所以不會(huì)成為單點(diǎn)故障。如下:

zookeeper教程:入門(mén)篇

watcher機(jī)制

zookeeper允許用戶(hù)在指定節(jié)點(diǎn)上注冊(cè)一些Watcher,當(dāng)數(shù)據(jù)節(jié)點(diǎn)發(fā)生變化的時(shí)候,zookeeper服務(wù)器會(huì)把這個(gè)變化的通知發(fā)送給感興趣的客戶(hù)端。這個(gè)是zookeeper的核心特性,zookeeper的很多功能都是基于這個(gè)特性實(shí)現(xiàn)的。

如果有兩個(gè)客戶(hù)端都在zookeeper集群中注冊(cè)了watcher(事件監(jiān)聽(tīng)器),那么當(dāng)zookeeper中的節(jié)點(diǎn)數(shù)據(jù)發(fā)生變化的時(shí)候,zookeeper會(huì)把這一變化的通知發(fā)送給客戶(hù)端,當(dāng)客戶(hù)端收到這個(gè)變化通知的時(shí)候,會(huì)觸發(fā)某些提前定義好的動(dòng)作。一般來(lái)說(shuō),zookeeper會(huì)向客戶(hù)端發(fā)送且僅發(fā)送一條通知,如果一個(gè)watch同時(shí)注冊(cè)了多個(gè)接口(exists,getData),如果此時(shí)刪除節(jié)點(diǎn),雖然這個(gè)事件對(duì)exists和getData都有效,但是watch只會(huì)被調(diào)用一次。并且這些請(qǐng)求有可能存在延時(shí),所以不能絕對(duì)可靠得到每個(gè)節(jié)點(diǎn)發(fā)生的每個(gè)更改。watch觸發(fā)后會(huì)立即刪除,要持續(xù)監(jiān)聽(tīng)變化的話(huà)就需要持續(xù)提供設(shè)置watch。并且客戶(hù)端先得到watch通知才可查看變化結(jié)果。

zookeeper教程:入門(mén)篇

觸發(fā)watch事件的條件有4種,create,delete,change,child(子節(jié)點(diǎn)事件)。

所以可以總結(jié)zookeeper的特點(diǎn)如下:

1、原子性(Atomicity),更新成功或失敗。沒(méi)有部分結(jié)果。

2、可靠性:數(shù)據(jù)的變更不會(huì)丟失,除非被客戶(hù)端覆蓋修改。

3、實(shí)時(shí)性:系統(tǒng)的客戶(hù)端當(dāng)時(shí)讀取到的數(shù)據(jù)是最新的。

4、有序性:客戶(hù)端的操作都是按照順序生效的。

5、一致性:又叫單個(gè)系統(tǒng)映像,無(wú)論連接的是哪個(gè)服務(wù)器,客戶(hù)端看到的內(nèi)容都是相同的。

總結(jié)

上述就是關(guān)于zookeeper的簡(jiǎn)單介紹。自己也是一個(gè)學(xué)習(xí)的過(guò)程。總結(jié)了一些關(guān)于zookeeper的概念和相關(guān)知識(shí)點(diǎn)。

責(zé)任編輯:姜華 來(lái)源: 今日頭條
相關(guān)推薦

2021-10-14 09:58:24

消息中間件ActiveMQ Java

2021-01-28 08:55:48

Elasticsear數(shù)據(jù)庫(kù)數(shù)據(jù)存儲(chǔ)

2021-07-21 09:48:20

etcd-wal模塊解析數(shù)據(jù)庫(kù)

2021-07-12 06:11:14

SkyWalking 儀表板UI篇

2021-06-28 10:04:12

SpringCloudSleuth微服務(wù)

2021-05-08 09:02:48

KubeBuilderOperatork8s

2020-12-24 08:07:18

SpringBootSpring SecuWeb

2021-05-11 09:31:31

kustomizeoperator kubernetes

2021-06-07 12:06:19

SpringCloud Sleuth微服務(wù)

2022-03-01 13:55:27

TektonKubernetes集群

2022-03-08 08:32:43

Tekton云原生開(kāi)源

2021-09-18 07:43:33

ApolloJava配置中心

2021-07-08 07:30:13

Webpack 前端Tree shakin

2021-10-28 08:51:53

GPIO軟件框架 Linux

2021-04-23 08:59:35

ClickHouse集群搭建數(shù)據(jù)庫(kù)

2022-02-25 15:50:05

OpenHarmonToggle組件鴻蒙

2021-05-08 08:36:40

ObjectString前端

2021-04-14 07:55:45

Swift 協(xié)議Protocol

2023-03-13 09:31:04

2021-08-18 10:28:09

MySQL SQL 語(yǔ)句數(shù)據(jù)庫(kù)
點(diǎn)贊
收藏

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

国产mv久久久| 麻豆传媒视频在线观看| 亚洲免费激情| 日韩美女写真福利在线观看| 91超碰碰碰碰久久久久久综合| 欧美性猛交xxxx免费看漫画| 超碰在线97免费| av亚洲精华国产精华| 成人在线免费观看视频网站| 精品综合久久久久久8888| 欧美成人在线免费观看| 国产欧美在线| 国产精品一区视频网站| 你懂的国产精品永久在线| 91精品久久久久| 麻豆精品少妇| 欧美亚洲国产视频| 久久丝袜视频| 97久久精品人搡人人玩| 欧美视频精品全部免费观看| 久久久精品在线观看| 欧美国产亚洲精品| 97国产精品视频| 九九综合在线| 成人高h视频在线| 在线不卡欧美| 神马影院一区二区| 国产在线精品不卡| 国产原创popny丨九色| 国产亚洲成年网址在线观看| 在线免费视频一区| 亚洲一区二区欧美日韩| 久久久久久女乱国产| 777午夜精品视频在线播放| 黄色免费网站在线观看| 精品国产91久久久久久久妲己 | 免费av片风间由美在线| 亚洲国产日韩一级| 国产免费a∨片在线观看不卡| 91精品国产91久久久久久最新毛片 | 欧美v日韩v国产v| 周于希免费高清在线观看| 国产一区二区三区丝袜| 超碰97久久国产精品牛牛| 国产精品久久久久久久av大片| 午夜欧美精品| 国产免费色视频| 久久理论电影网| 黄色录像1级片| 欧美片网站yy| 成人看片网页| 国产精品福利无圣光在线一区| 好吊日精品视频| 手机在线视频你懂的| 中文字幕国产精品一区二区| 最美情侣韩剧在线播放| 欧美一卡2卡三卡4卡5免费| 久久久久久久性潮| 国产专区精品视频| 麻豆久久久久久久| 国内av免费| 精品处破学生在线二十三| 亚洲一区 二区| 国产免费一区二区三区| 成人av免费在线观看| 亚色视频在线播放| 精品国产精品网麻豆系列| 亚洲一区二区免费在线观看| av在线不卡一区| 99久久国产免费看| 国产三级电影在线| 欧美成人亚洲成人日韩成人| 亚洲午夜一级| 国产又黄又猛视频| 91精品国产综合久久精品性色| 日韩高清一区| 日韩中文字幕一区二区| 亚洲专区一二三| 在线日本欧美| 国产亚洲福利社区| 国产精品久久国产精麻豆99网站| 色yeye免费人成网站在线观看| 91wwwcom在线观看| 国产一区二区在线电影| 青青草观看免费视频在线| 精品精品国产国产自在线| 亚洲国产1区| 九色视频一区| 亚洲一区二区国产| 亚洲特级毛片| 色总=综合色| 亚洲欧美视频在线| 亚洲国内精品| 91嫩草在线播放| 在线视频一区二区| 视频一区中文字幕国产| 中文字幕视频在线观看| 国语自产在线不卡| 成人免费高清在线| 9999精品成人免费毛片在线看| 91精品国产综合久久久久久蜜臀| 国产日韩三级在线| 免费成人美女女| 先锋影音欧美| 欧美亚洲日本国产| 亚洲欧美校园春色| 精品一区二区中文字幕| 亚洲国产精品成人一区二区| 国产精品www994| 一级片在线视频| 欧美在线视频免费| 91麻豆产精品久久久久久 | 欧美日韩中文一区| 精品一二三区| 日本xxxxwwww| 欧美精品video| 99久久精品费精品国产一区二区| 少妇淫片在线影院| 亚洲成人午夜在线| 制服丝袜中文字幕亚洲| 亚洲高清资源| 天天影视久久综合| 国产精品综合久久久久久| 精品国产户外野外| 欧美呦呦网站| 中午字幕在线观看| 国产精品久久久久久久久久免费| 中文字幕制服丝袜一区二区三区| 久久久久久久久成人| 成人在线观看黄| 九九热精品视频在线播放| 99久久亚洲一区二区三区青草| 色猫猫成人app| 91视频最新入口| 蜜臀久久99精品久久久无需会员| 北岛玲一区二区三区四区| 欧美大电影免费观看| 久久久久久久久久伊人| 中文字幕精品网| 久久麻豆一区二区| 亚洲福利网站| 亚洲精品一区视频| 国产99在线免费| 91精品国产综合久久久蜜臀粉嫩 | 99久久免费国产| 国产一区精品二区| 欧美第一页浮力影院| 青青久久aⅴ北条麻妃| 亚洲va欧美va国产va天堂影院| 伊人久久大香线| 成人直播在线| 国产美女永久无遮挡| 久久久久久久久网站| 亚洲精选在线视频| 狠狠色综合网| 日本不卡1234视频| 无码人妻丰满熟妇区96| 欧美综合国产精品久久丁香| 天天综合天天做天天综合| 99精品欧美| jizz免费一区二区三区| 先锋在线亚洲| 操人视频欧美| 亚洲免费影视第一页| 国产精品久久久久久久久免费相片 | 在线综合视频网站| 久久伊人91精品综合网站| 成人欧美一区二区三区黑人麻豆| 五月综合激情| 91桃色在线观看| 青青青在线视频免费观看| 国产欧美一区二区三区在线| 日韩精品最新网址| 日本一区二区动态图| 狠狠入ady亚洲精品| 香蕉久久免费电影| 91短视频在线| 国产一二三四五| 国产成人精品国内自产拍免费看| 91精品国产乱码久久蜜臀| 久久综合久久综合久久综合| 中文乱码免费一区二区三区下载| 天堂中文在线播放| 丝袜国产免费观看| 国产美女视频免费| 欧洲成人免费aa| 日韩女优视频免费观看| 国产欧美一区二区精品婷婷| 99精品免费视频| 国产一区二区三区亚洲| 青春草视频在线| 一级片免费视频| 无码人妻精品一区二区蜜桃网站| 国产精品免费一区| 在线看日韩欧美| 欧美日韩免费不卡视频一区二区三区 | 免费福利影院| 亚洲欧美久久234| 国产精品美女免费看| 亚洲丝袜在线视频|