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

聊聊Apache Dubbo,概念、架構(gòu)和負(fù)載均衡

開發(fā) 架構(gòu)
Dubbo作為阿里巴巴內(nèi)部的SOA服務(wù)化治理方案的核心框架,在2012年時(shí)已經(jīng)每天為2000+個(gè)服務(wù)提供3,000,000,000+次訪問量支持,并被廣泛應(yīng)用于阿里巴巴集團(tuán)的各成員站點(diǎn)。

 在2011年10月27日,阿里巴巴開源了自己的SOA服務(wù)化治理方案的核心框架Dubbo,服務(wù)治理和SOA的設(shè)計(jì)理念開始逐漸在國內(nèi)軟件行業(yè)中落地,并被廣泛應(yīng)用。

[[281524]]

Dubbo作為阿里巴巴內(nèi)部的SOA服務(wù)化治理方案的核心框架,在2012年時(shí)已經(jīng)每天為2000+個(gè)服務(wù)提供3,000,000,000+次訪問量支持,并被廣泛應(yīng)用于阿里巴巴集團(tuán)的各成員站點(diǎn)。Dubbo自2011年開源后,已被許多非阿里系公司使用,其中既有當(dāng)當(dāng)網(wǎng)、網(wǎng)易考拉等互聯(lián)網(wǎng)公司,也有中國人壽、青島海爾等傳統(tǒng)企業(yè)。本文是作者根據(jù)官方文檔以及自己平時(shí)的使用情況,對 Dubbo 所做的一個(gè)總結(jié)。

一 重要的概念

1.1 什么是 Dubbo?

Apache Dubbo (incubating) |ˈdʌbəʊ| 是一款高性能、輕量級的開源Java RPC 框架,它提供了三大核心能力:面向接口的遠(yuǎn)程方法調(diào)用,智能容錯(cuò)和負(fù)載均衡,以及服務(wù)自動(dòng)注冊和發(fā)現(xiàn)。簡單來說 Dubbo 是一個(gè)分布式服務(wù)框架,致力于提供高性能和透明化的RPC遠(yuǎn)程服務(wù)調(diào)用方案,以及SOA服務(wù)治理方案。

Dubbo 目前已經(jīng)有接近 25k 的 Star ,Dubbo的Github 地址:https://github.com/apache/incubator-dubbo 。 另外,在開源中國舉行的2018年度最受歡迎中國開源軟件這個(gè)活動(dòng)的評選中,Dubbo 更是憑借其超高人氣僅次于 vue.js 和 ECharts 獲得第三名的好成績。

Dubbo 是由阿里開源,后來加入了 Apache 。正式由于 Dubbo 的出現(xiàn),才使得越來越多的公司開始使用以及接受分布式架構(gòu)。

我們上面說了 Dubbo 實(shí)際上是 RPC 框架,那么什么是 RPC呢?

1.2 什么是 RPC?RPC原理是什么?

什么是 RPC?

RPC(Remote Procedure Call)—遠(yuǎn)程過程調(diào)用,它是一種通過網(wǎng)絡(luò)從遠(yuǎn)程計(jì)算機(jī)程序上請求服務(wù),而不需要了解底層網(wǎng)絡(luò)技術(shù)的協(xié)議。比如兩個(gè)不同的服務(wù)A,B部署在兩臺不同的機(jī)器上,那么服務(wù) A 如果想要調(diào)用服務(wù) B 中的某個(gè)方法該怎么辦呢?使用 HTTP請求 當(dāng)然可以,但是可能會(huì)比較慢而且一些優(yōu)化做的并不好。 RPC 的出現(xiàn)就是為了解決這個(gè)問題。

RPC原理是什么?

我這里這是簡單的提一下。詳細(xì)內(nèi)容可以查看下面這篇文章:

http://dubbo.apache.org/zh-cn/blog/rpc-introduction.html

 

聊聊Apache Dubbo,概念、架構(gòu)和負(fù)載均衡

 

RPC原理圖

  • 服務(wù)消費(fèi)方(client)調(diào)用以本地調(diào)用方式調(diào)用服務(wù);
  • client stub接收到調(diào)用后負(fù)責(zé)將方法、參數(shù)等組裝成能夠進(jìn)行網(wǎng)絡(luò)傳輸?shù)南Ⅲw;
  • client stub找到服務(wù)地址,并將消息發(fā)送到服務(wù)端;
  • server stub收到消息后進(jìn)行解碼;
  • server stub根據(jù)解碼結(jié)果調(diào)用本地的服務(wù);
  • 本地服務(wù)執(zhí)行并將結(jié)果返回給server stub;
  • server stub將返回結(jié)果打包成消息并發(fā)送至消費(fèi)方;
  • client stub接收到消息,并進(jìn)行解碼;
  • 服務(wù)消費(fèi)方得到最終結(jié)果。

下面再貼一個(gè)網(wǎng)上的時(shí)序圖:

 

聊聊Apache Dubbo,概念、架構(gòu)和負(fù)載均衡

 

RPC原理時(shí)序圖

說了這么多,我們?yōu)槭裁匆?Dubbo 呢?

1.3 為什么要用 Dubbo?

Dubbo 的誕生和 SOA 分布式架構(gòu)的流行有著莫大的關(guān)系。SOA 面向服務(wù)的架構(gòu)(Service Oriented Architecture),也就是把工程按照業(yè)務(wù)邏輯拆分成服務(wù)層、表現(xiàn)層兩個(gè)工程。服務(wù)層中包含業(yè)務(wù)邏輯,只需要對外提供服務(wù)即可。表現(xiàn)層只需要處理和頁面的交互,業(yè)務(wù)邏輯都是調(diào)用服務(wù)層的服務(wù)來實(shí)現(xiàn)。SOA架構(gòu)中有兩個(gè)主要角色:服務(wù)提供者(Provider)和服務(wù)使用者(Consumer)。

 

聊聊Apache Dubbo,概念、架構(gòu)和負(fù)載均衡

 

為什么要用 Dubbo

如果你要開發(fā)分布式程序,你也可以直接基于 HTTP 接口進(jìn)行通信,但是為什么要用 Dubbo呢?

我覺得主要可以從 Dubbo 提供的下面四點(diǎn)特性來說為什么要用 Dubbo:

  1. 負(fù)載均衡——同一個(gè)服務(wù)部署在不同的機(jī)器時(shí)該調(diào)用那一臺機(jī)器上的服務(wù)
  2. 服務(wù)調(diào)用鏈路生成——隨著系統(tǒng)的發(fā)展,服務(wù)越來越多,服務(wù)間依賴關(guān)系變得錯(cuò)蹤復(fù)雜,甚至分不清哪個(gè)應(yīng)用要在哪個(gè)應(yīng)用之前啟動(dòng),架構(gòu)師都不能完整的描述應(yīng)用的架構(gòu)關(guān)系。Dubbo 可以為我們解決服務(wù)之間互相是如何調(diào)用的。
  3. 服務(wù)訪問壓力以及時(shí)長統(tǒng)計(jì)、資源調(diào)度和治理——基于訪問壓力實(shí)時(shí)管理集群容量,提高集群利用率。
  4. 服務(wù)降級——某個(gè)服務(wù)掛掉之后調(diào)用備用服務(wù)

另外,Dubbo 除了能夠應(yīng)用在分布式系統(tǒng)中,也可以應(yīng)用在現(xiàn)在比較火的微服務(wù)系統(tǒng)中。不過,由于 Spring Cloud 在微服務(wù)中應(yīng)用更加廣泛,所以,我覺得一般我們提 Dubbo 的話,大部分是分布式系統(tǒng)的情況。

我們剛剛提到了分布式這個(gè)概念,下面再給大家介紹一下什么是分布式?為什么要分布式?

1.4 什么是分布式?

分布式或者說 SOA 分布式重要的就是面向服務(wù),說簡單的分布式就是我們把整個(gè)系統(tǒng)拆分成不同的服務(wù)然后將這些服務(wù)放在不同的服務(wù)器上減輕單體服務(wù)的壓力提高并發(fā)量和性能。比如電商系統(tǒng)可以簡單地拆分成訂單系統(tǒng)、商品系統(tǒng)、登錄系統(tǒng)等等,拆分之后的每個(gè)服務(wù)可以部署在不同的機(jī)器上,如果某一個(gè)服務(wù)的訪問量比較大的話也可以將這個(gè)服務(wù)同時(shí)部署在多臺機(jī)器上。

1.5 為什么要分布式?

從開發(fā)角度來講單體應(yīng)用的代碼都集中在一起,而分布式系統(tǒng)的代碼根據(jù)業(yè)務(wù)被拆分。所以,每個(gè)團(tuán)隊(duì)可以負(fù)責(zé)一個(gè)服務(wù)的開發(fā),這樣提升了開發(fā)效率。另外,代碼根據(jù)業(yè)務(wù)拆分之后更加便于維護(hù)和擴(kuò)展。

另外,我覺得將系統(tǒng)拆分成分布式之后不光便于系統(tǒng)擴(kuò)展和維護(hù),更能提高整個(gè)系統(tǒng)的性能。你想一想嘛?把整個(gè)系統(tǒng)拆分成不同的服務(wù)/系統(tǒng),然后每個(gè)服務(wù)/系統(tǒng) 單獨(dú)部署在一臺服務(wù)器上,是不是很大程度上提高了系統(tǒng)性能呢?

二 Dubbo 的架構(gòu)

2.1 Dubbo 的架構(gòu)圖解

 

聊聊Apache Dubbo,概念、架構(gòu)和負(fù)載均衡

 

Dubbo 架構(gòu)

上述節(jié)點(diǎn)簡單說明:

Provider: 暴露服務(wù)的服務(wù)提供方

Consumer: 調(diào)用遠(yuǎn)程服務(wù)的服務(wù)消費(fèi)方

Registry: 服務(wù)注冊與發(fā)現(xiàn)的注冊中心

Monitor: 統(tǒng)計(jì)服務(wù)的調(diào)用次數(shù)和調(diào)用時(shí)間的監(jiān)控中心

Container: 服務(wù)運(yùn)行容器

調(diào)用關(guān)系說明:

服務(wù)容器負(fù)責(zé)啟動(dòng),加載,運(yùn)行服務(wù)提供者。

服務(wù)提供者在啟動(dòng)時(shí),向注冊中心注冊自己提供的服務(wù)。

服務(wù)消費(fèi)者在啟動(dòng)時(shí),向注冊中心訂閱自己所需的服務(wù)。

注冊中心返回服務(wù)提供者地址列表給消費(fèi)者,如果有變更,注冊中心將基于長連接推送變更數(shù)據(jù)給消費(fèi)者。

服務(wù)消費(fèi)者,從提供者地址列表中,基于軟負(fù)載均衡算法,選一臺提供者進(jìn)行調(diào)用,如果調(diào)用失敗,再選另一臺調(diào)用。

服務(wù)消費(fèi)者和提供者,在內(nèi)存中累計(jì)調(diào)用次數(shù)和調(diào)用時(shí)間,定時(shí)每分鐘發(fā)送一次統(tǒng)計(jì)數(shù)據(jù)到監(jiān)控中心。

重要知識點(diǎn)總結(jié):

注冊中心負(fù)責(zé)服務(wù)地址的注冊與查找,相當(dāng)于目錄服務(wù),服務(wù)提供者和消費(fèi)者只在啟動(dòng)時(shí)與注冊中心交互,注冊中心不轉(zhuǎn)發(fā)請求,壓力較小

監(jiān)控中心負(fù)責(zé)統(tǒng)計(jì)各服務(wù)調(diào)用次數(shù),調(diào)用時(shí)間等,統(tǒng)計(jì)先在內(nèi)存匯總后每分鐘一次發(fā)送到監(jiān)控中心服務(wù)器,并以報(bào)表展示

注冊中心,服務(wù)提供者,服務(wù)消費(fèi)者三者之間均為長連接,監(jiān)控中心除外

注冊中心通過長連接感知服務(wù)提供者的存在,服務(wù)提供者宕機(jī),注冊中心將立即推送事件通知消費(fèi)者

注冊中心和監(jiān)控中心全部宕機(jī),不影響已運(yùn)行的提供者和消費(fèi)者,消費(fèi)者在本地緩存了提供者列表

注冊中心和監(jiān)控中心都是可選的,服務(wù)消費(fèi)者可以直連服務(wù)提供者

服務(wù)提供者無狀態(tài),任意一臺宕掉后,不影響使用

服務(wù)提供者全部宕掉后,服務(wù)消費(fèi)者應(yīng)用將無法使用,并無限次重連等待服務(wù)提供者恢復(fù)

2.2 Dubbo 工作原理

 

聊聊Apache Dubbo,概念、架構(gòu)和負(fù)載均衡

 

Dubbo 工作原理

圖中從下至上分為十層,各層均為單向依賴,右邊的黑色箭頭代表層之間的依賴關(guān)系,每一層都可以剝離上層被復(fù)用,其中,Service 和 Config 層為 API,其它各層均為 SPI。

各層說明:

  • 第一層:service層,接口層,給服務(wù)提供者和消費(fèi)者來實(shí)現(xiàn)的
  • 第二層:config層,配置層,主要是對dubbo進(jìn)行各種配置的
  • 第三層:proxy層,服務(wù)接口透明代理,生成服務(wù)的客戶端 Stub 和服務(wù)器端 Skeleton
  • 第四層:registry層,服務(wù)注冊層,負(fù)責(zé)服務(wù)的注冊與發(fā)現(xiàn)
  • 第五層:cluster層,集群層,封裝多個(gè)服務(wù)提供者的路由以及負(fù)載均衡,將多個(gè)實(shí)例組合成一個(gè)服務(wù)
  • 第六層:monitor層,監(jiān)控層,對rpc接口的調(diào)用次數(shù)和調(diào)用時(shí)間進(jìn)行監(jiān)控
  • 第七層:protocol層,遠(yuǎn)程調(diào)用層,封裝rpc調(diào)用
  • 第八層:exchange層,信息交換層,封裝請求響應(yīng)模式,同步轉(zhuǎn)異步
  • 第九層:transport層,網(wǎng)絡(luò)傳輸層,抽象mina和netty為統(tǒng)一接口
  • 第十層:serialize層,數(shù)據(jù)序列化層。網(wǎng)絡(luò)傳輸需要。

三 Dubbo 的負(fù)載均衡策略

3.1 先來解釋一下什么是負(fù)載均衡

先來個(gè)官方的解釋。

維基百科對負(fù)載均衡的定義:負(fù)載均衡改善了跨多個(gè)計(jì)算資源(例如計(jì)算機(jī),計(jì)算機(jī)集群,網(wǎng)絡(luò)鏈接,中央處理單元或磁盤驅(qū)動(dòng)的的工作負(fù)載分布。負(fù)載平衡旨在優(yōu)化資源使用,最大化吞吐量,最小化響應(yīng)時(shí)間,并避免任何單個(gè)資源的過載。使用具有負(fù)載平衡而不是單個(gè)組件的多個(gè)組件可以通過冗余提高可靠性和可用性。負(fù)載平衡通常涉及專用軟件或硬件

上面講的大家可能不太好理解,再用通俗的話給大家說一下。

比如我們的系統(tǒng)中的某個(gè)服務(wù)的訪問量特別大,我們將這個(gè)服務(wù)部署在了多臺服務(wù)器上,當(dāng)客戶端發(fā)起請求的時(shí)候,多臺服務(wù)器都可以處理這個(gè)請求。那么,如何正確選擇處理該請求的服務(wù)器就很關(guān)鍵。假如,你就要一臺服務(wù)器來處理該服務(wù)的請求,那該服務(wù)部署在多臺服務(wù)器的意義就不復(fù)存在了。負(fù)載均衡就是為了避免單個(gè)服務(wù)器響應(yīng)同一請求,容易造成服務(wù)器宕機(jī)、崩潰等問題,我們從負(fù)載均衡的這四個(gè)字就能明顯感受到它的意義。

3.2 再來看看 Dubbo 提供的負(fù)載均衡策略

在集群負(fù)載均衡時(shí),Dubbo 提供了多種均衡策略,默認(rèn)為 random 隨機(jī)調(diào)用。可以自行擴(kuò)展負(fù)載均衡策略,參見:負(fù)載均衡擴(kuò)展。

備注:下面的圖片來自于:尚硅谷2018Dubbo 視頻。

3.2.1 Random LoadBalance(默認(rèn),基于權(quán)重的隨機(jī)負(fù)載均衡機(jī)制)

隨機(jī),按權(quán)重設(shè)置隨機(jī)概率。

在一個(gè)截面上碰撞的概率高,但調(diào)用量越大分布越均勻,而且按概率使用權(quán)重后也比較均勻,有利于動(dòng)態(tài)調(diào)整提供者權(quán)重。

 

聊聊Apache Dubbo,概念、架構(gòu)和負(fù)載均衡

 

基于權(quán)重的隨機(jī)負(fù)載均衡機(jī)制

3.2.2 RoundRobin LoadBalance(不推薦,基于權(quán)重的輪詢負(fù)載均衡機(jī)制)

  • 輪循,按公約后的權(quán)重設(shè)置輪循比率。
  • 存在慢的提供者累積請求的問題,比如:第二臺機(jī)器很慢,但沒掛,當(dāng)請求調(diào)到第二臺時(shí)就卡在那,久而久之,所有請求都卡在調(diào)到第二臺上。

 

聊聊Apache Dubbo,概念、架構(gòu)和負(fù)載均衡

 

基于權(quán)重的輪詢負(fù)載均衡機(jī)制

3.2.3 LeastActive LoadBalance

最少活躍調(diào)用數(shù),相同活躍數(shù)的隨機(jī),活躍數(shù)指調(diào)用前后計(jì)數(shù)差。

使慢的提供者收到更少請求,因?yàn)樵铰奶峁┱叩恼{(diào)用前后計(jì)數(shù)差會(huì)越大。

3.2.4 ConsistentHash LoadBalance

  • 一致性 Hash,相同參數(shù)的請求總是發(fā)到同一提供者。(如果你需要的不是隨機(jī)負(fù)載均衡,是要一類請求都到一個(gè)節(jié)點(diǎn),那就走這個(gè)一致性hash策略。)
  • 當(dāng)某一臺提供者掛時(shí),原本發(fā)往該提供者的請求,基于虛擬節(jié)點(diǎn),平攤到其它提供者,不會(huì)引起劇烈變動(dòng)。
  • 算法參見:http://en.wikipedia.org/wiki/Consistent_hashing
  • 缺省只對第一個(gè)參數(shù) Hash,如果要修改,請配置
  • 缺省用 160 份虛擬節(jié)點(diǎn),如果要修改,請配置

3.3 配置方式

xml 配置方式

服務(wù)端服務(wù)級別

客戶端服務(wù)級別

服務(wù)端方法級別

客戶端方法級別

注解配置方式:

消費(fèi)方基于基于注解的服務(wù)級別配置方式:

四 zookeeper宕機(jī)與dubbo直連的情況

zookeeper宕機(jī)與dubbo直連的情況在面試中可能會(huì)被經(jīng)常問到,所以要引起重視。

在實(shí)際生產(chǎn)中,假如zookeeper注冊中心宕掉,一段時(shí)間內(nèi)服務(wù)消費(fèi)方還是能夠調(diào)用提供方的服務(wù)的,實(shí)際上它使用的本地緩存進(jìn)行通訊,這只是dubbo健壯性的一種提現(xiàn)。

dubbo的健壯性表現(xiàn):

  • 監(jiān)控中心宕掉不影響使用,只是丟失部分采樣數(shù)據(jù)
  • 數(shù)據(jù)庫宕掉后,注冊中心仍能通過緩存提供服務(wù)列表查詢,但不能注冊新服務(wù)
  • 注冊中心對等集群,任意一臺宕掉后,將自動(dòng)切換到另一臺
  • 注冊中心全部宕掉后,服務(wù)提供者和服務(wù)消費(fèi)者仍能通過本地緩存通訊
  • 服務(wù)提供者無狀態(tài),任意一臺宕掉后,不影響使用
  • 服務(wù)提供者全部宕掉后,服務(wù)消費(fèi)者應(yīng)用將無法使用,并無限次重連等待服務(wù)提供者恢復(fù)

我們前面提到過:注冊中心負(fù)責(zé)服務(wù)地址的注冊與查找,相當(dāng)于目錄服務(wù),服務(wù)提供者和消費(fèi)者只在啟動(dòng)時(shí)與注冊中心交互,注冊中心不轉(zhuǎn)發(fā)請求,壓力較小。所以,我們可以完全可以繞過注冊中心——采用 dubbo 直連 ,即在服務(wù)消費(fèi)方配置服務(wù)提供方的位置信息。

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

2010-04-22 13:56:51

集群負(fù)載均衡

2010-04-22 11:47:58

集群負(fù)載均衡

2010-04-20 15:13:08

負(fù)載均衡

2010-04-20 11:51:31

負(fù)載均衡

2025-09-01 08:57:31

2010-05-04 13:27:27

apache負(fù)載均衡

2010-04-26 14:44:36

負(fù)載均衡設(shè)備

2010-05-05 18:18:55

IP負(fù)載均衡

2023-03-30 13:32:51

負(fù)載均衡器HDFS

2010-04-22 17:53:36

Apache負(fù)載均衡

2010-04-22 18:27:37

Apache負(fù)載均衡

2010-05-05 18:34:35

Apache負(fù)載均衡

2010-04-28 12:38:38

負(fù)載均衡的概念

2010-05-04 14:06:15

Apache負(fù)載均衡

2010-05-06 14:41:31

SQL Server負(fù)載均衡

2010-05-05 19:00:54

apache負(fù)載均衡

2010-05-07 12:32:04

Apachetomact負(fù)載均衡

2019-09-10 09:58:19

Dubbo負(fù)載均衡Hash

2023-10-25 22:23:35

Dubbo路由

2013-10-15 13:24:00

負(fù)載均衡架構(gòu)
點(diǎn)贊
收藏

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

福利视频久久| 一区二区三区四区欧美| 中文在线免费一区三区| 宅男噜噜噜66一区二区66| 阿v免费在线观看| 欧美一区二区人人喊爽| 在线天堂新版最新版在线8| 亚洲视频在线观看| 成人性生交大片免费看中文视频| 2019国产精品自在线拍国产不卡| 精品国产一区探花在线观看| 成人欧美一区二区三区视频xxx | 亚洲一区二区三区777| 久久综合影视| 国产第一页视频| 欧美午夜理伦三级在线观看| 福利影院在线看| 午夜精品久久久久久久99黑人| 狠狠88综合久久久久综合网| 欧美日韩亚洲免费| 国产精品你懂的在线欣赏| 欧洲毛片在线| 久久久国产一区二区| 亚洲天堂黄色| 成人3d动漫一区二区三区| 欧美亚洲尤物久久| 国产精品一站二站| 蜜桃狠狠色伊人亚洲综合网站| 中文字幕不卡在线观看| 男人影院在线观看| 日韩免费av一区二区| 国产盗摄精品一区二区三区在线| 一二三中文字幕在线| 欧美床上激情在线观看| 久久精品国产久精国产| eeuss在线观看| 自拍偷拍亚洲在线| 久久xxxx精品视频| 三级国产三级在线| 国内精品久久久久久影视8| 奇米精品一区二区三区在线观看| 亚洲日本伦理| 亚洲精品免费网站| 亚洲成人午夜影院| 日本亚洲不卡| 黄色三级视频片| 久久精品在线播放| 大白屁股一区二区视频| 欧美日韩国产一二| 国产午夜精品久久久久久久| 国产美女高潮在线观看| 日韩视频专区| 精品国精品国产| 天堂在线亚洲视频| 久久av色综合| 在线视频91| 色老头一区二区三区| 成人av中文字幕| 国产欧美视频在线| 欧美黄色一级片视频| 97人人模人人爽人人喊中文字| 99久久国产免费看| 视频一区中文字幕精品| 国产乱xxⅹxx国语对白| 国产欧美在线播放| 91精品在线观看入口| 日韩av二区在线播放| 免费成人美女女| 先锋影音资源999| 69堂成人精品视频免费| 7777精品伊人久久久大香线蕉完整版| 水蜜桃久久夜色精品一区的特点 | 亚洲激情成人在线| 综合天堂av久久久久久久| lutube成人福利在线观看| 亚欧精品在线| 久久久久久久色| 色综合亚洲欧洲| 国产一区二区三区黄视频 | 国产日韩欧美成人| 精品日韩av一区二区| 欧美韩国日本不卡| 国产综合精品| 小黄鸭精品aⅴ导航网站入口| 国产av无码专区亚洲精品| 国产精品播放| 久久久天堂国产精品女人| 精品欧美一区二区三区精品久久 | 精品视频一区在线| 久久青草福利网站| 久久国产高清| 亚洲激情77| 国产欧美自拍| 免费在线午夜视频| 啊啊啊啊啊啊啊视频在线播放| 国产精品12p| 国产亚洲欧美一区二区三区| 国精产品一区一区三区有限在线| 日韩免费观看高清完整版 | 中文字幕精品视频| caoporen国产精品视频| 色天天综合网| 人人爱人人干婷婷丁香亚洲| 50度灰在线| 中文字幕网在线| 黑人糟蹋人妻hd中文字幕| 欧美在线一二三区| 国产精品美女久久久免费| 色综合天天综合网国产成人网| 精品一区二区三区国产| ijzzijzzij亚洲大全| 亚洲第一男人天堂| 亚洲精品字幕| 久久人体av| 中文字幕第80页| 国产91在线亚洲| 久久99最新地址| 精品国产导航| 国产美女在线观看| 免费yellow网站| 亚洲最大色综合成人av| 国产精品精品久久久久久| 亚洲精品视频中文字幕| 欧美高清日韩| 黄色av网站在线观看| 亚洲午夜精品一区二区三区| 国产精品成人一区| 4438亚洲最大| av影院午夜一区| 久久美女精品| wwww亚洲| 九九久久国产精品| 欧美日韩国产首页| 亚洲一区免费视频| 欧美aa在线视频| 亚洲一区二区三区高清不卡| 1204国产成人精品视频| 在线三级中文| 黄色的视频在线免费观看| 麻豆tv在线播放| 亚洲欧美久久234| 热re91久久精品国99热蜜臀| 亚洲精品一区在线观看| 91美女视频网站| 日韩高清不卡一区二区三区| 久久久久观看| 性欧美又大又长又硬| 四虎电影院在线观看| 日本成人中文字幕在线| 久久av一区二区三区漫画| 国产一区视频在线| 中文字幕精品一区二区精品| 欧美日本在线一区| av一区二区三区黑人| www久久精品| 成人性视频免费网站| 亚洲主播在线| 日韩av大片站长工具| 91国内外精品自在线播放| japanese色国产在线看视频| 神马电影在线观看| 中文字幕在线资源| 黄视频在线播放| 日韩黄色影院| 成年人视频在线免费观看| 东凛在线观看| 日本不卡一二三| 在线一区视频观看| 日韩高清在线观看一区二区| www.久久.com| 久久精品论坛| 国产精品丝袜在线播放| 欧美日韩伦理在线免费| 欧美日韩精品免费观看视频完整| 亚洲字幕久久| 欧美精品国产一区二区| 美腿丝袜一区二区三区| 精品一二线国产| 国产福利91精品| 国产婷婷色一区二区三区在线| 欧美高清一级片在线观看| 亚洲视频每日更新| 欧美日韩在线一区二区| 亚洲精品少妇网址| 国产主播欧美精品| 97精品在线视频| 亚洲国产精品中文| 免费成人在线网站| 日本成人不卡| 第一区第二区在线| 综合一区av| caoporn国产一区二区| 亚洲国产综合在线| 亚洲欧美激情在线视频| 色香阁99久久精品久久久| 亚洲自拍高清视频网站| 伊人久久大香线蕉av一区| 91国产精品视频在线观看| 成人精品一区| 国产一卡不卡|