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

通過領(lǐng)域驅(qū)動建模來劃分微服務(wù),真正的難點(diǎn)究竟在哪里?

開發(fā) 架構(gòu)
微服務(wù)A只能對自己Owner的數(shù)據(jù)庫進(jìn)行類似JDBC等直接連接操作,而對于其它微服務(wù)的數(shù)據(jù)庫只能夠通過應(yīng)用層暴露的API接口服務(wù)進(jìn)行。

[[437734]]

本文轉(zhuǎn)載自微信公眾號「人月聊IT」,作者何明璐 。轉(zhuǎn)載本文請聯(lián)系人月聊IT公眾號。

今天這篇文章主要還是進(jìn)一步對上篇文章里面沒有說清楚的地方進(jìn)一步描述。

微服務(wù)劃分

注意微服務(wù)劃分涉及到兩個關(guān)鍵部分內(nèi)容。

  • 哪些業(yè)務(wù)功能應(yīng)該聚合在一起。
  • 哪些數(shù)據(jù)應(yīng)該聚合在一起,Owner是該微服務(wù)。

為何我不斷在強(qiáng)調(diào)這點(diǎn)。

因?yàn)樵谖⒎?wù)之間的傳統(tǒng)單體應(yīng)用階段,也有架構(gòu)設(shè)計(jì),也有組件劃分。但是一般來說只是應(yīng)用層業(yè)務(wù)功能如何聚合,而不會涉及到數(shù)據(jù)庫本身也要拆分的問題。

而微服務(wù)下的劃分必須是數(shù)據(jù)和功能全部拆分開。

微服務(wù)A只能對自己Owner的數(shù)據(jù)庫進(jìn)行類似JDBC等直接連接操作,而對于其它微服務(wù)的數(shù)據(jù)庫只能夠通過應(yīng)用層暴露的API接口服務(wù)進(jìn)行。

如上圖中紅叉的地方是不允許的。

傳統(tǒng)單體應(yīng)用架構(gòu)設(shè)計(jì),雖然也進(jìn)行了組件劃分,但是一般數(shù)據(jù)庫沒有拆分。組件雖然也可以單獨(dú)找APP Server獨(dú)立部署,但是底層數(shù)據(jù)庫還是耦合在一起的。

因此單個組件并沒有實(shí)現(xiàn)從數(shù)據(jù)庫到應(yīng)用層的完全解耦。

雖然組件設(shè)計(jì)開發(fā)規(guī)范要求組件A需要通過API訪問組件B提供的能力,但是實(shí)際大部分時(shí)候組件A是直接在訪問后臺數(shù)據(jù)庫表。

因?yàn)檫@樣做開發(fā)實(shí)現(xiàn)起來最簡單。

所有很多規(guī)范約束實(shí)際很難真正落地,組件化后仍然是緊耦合狀態(tài)。

因此微服務(wù)劃分同時(shí)需要考慮功能和數(shù)據(jù)兩個層面的聚合和拆分,這個劃分實(shí)際比傳統(tǒng)架構(gòu)設(shè)計(jì)中的組件劃分更難,考慮的點(diǎn)也需要更多。

領(lǐng)域模型來劃分微服務(wù)

領(lǐng)域驅(qū)動設(shè)計(jì)概念來源于2004年著名建模專家Eric Evans,也出了一本經(jīng)典的領(lǐng)域驅(qū)動設(shè)計(jì)的建模書籍。但是DDD本身多年前發(fā)展并不是很火。

如果回到10多年前,主流的架構(gòu)設(shè)計(jì)思路偏RUP+UML,而DDD建模思路實(shí)際更加復(fù)雜,能夠應(yīng)用好本身不容易。其次,很多IT項(xiàng)目本身也不需要用到這么復(fù)雜的建模方法。

而最近5年,隨著微服務(wù)架構(gòu)的流行,DDD領(lǐng)域建模再次受到重視。

一個核心應(yīng)用點(diǎn)就在于微服務(wù)究竟應(yīng)該如何劃分?

領(lǐng)域驅(qū)動設(shè)計(jì)中的限界上下文,子域劃分給了很好的思路和方法。比如常用的基于事件風(fēng)暴來劃分上下文。

識別事件和命令

事件你可以理解為一個事物所編寫出來的最終狀態(tài),例如訂單已創(chuàng)建,支付已完成,商品已發(fā)貨等即是關(guān)鍵的事件。而命令可以理解為具體的業(yè)務(wù)功能或操作,比如創(chuàng)建訂單,檢索商品,扣減庫存等。

可以看到事件和命令的識別和分析中,都可以識別到具體的領(lǐng)域?qū)ο蟆?/p>

基于領(lǐng)域的對象進(jìn)行聚合

如何進(jìn)行聚合?簡單來說仍然是通過識別和梳理出來的共性領(lǐng)域?qū)ο筮M(jìn)行聚合。將對同一領(lǐng)域?qū)ο蟮乃忻詈褪录季酆显谝黄稹?/p>

進(jìn)行上下文邊界的劃分

基于聚合完成的情況進(jìn)行上下文邊界的劃分,這里實(shí)際上不同的領(lǐng)域?qū)ο笕绻麑儆谕粋€大類的業(yè)務(wù)場景,仍然是可以劃分到一個上下文里面的。

也就是不是簡單地按聚合完成的領(lǐng)域?qū)ο髣澐稚舷挛倪吔纾芏嗪秃诵念I(lǐng)域?qū)ο笙嚓P(guān)的附屬對象也需要劃分到同一個上下文的。

比如電商里面的訂單是一個大量的領(lǐng)域?qū)ο螅梢詣澐譃楠?dú)立的上下文,但是對應(yīng)的購物車也是我們識別的對象,購物車本身同樣屬于產(chǎn)品訂購場景,訂單的擴(kuò)展附屬對象,因此需要將購物車也劃分到訂單上下文里面。

再次總結(jié)下整個方法思路如下。

即仍然是業(yè)務(wù)場景驅(qū)動分析加頭腦風(fēng)暴,識別出關(guān)鍵的業(yè)務(wù)事件(如果采用Scrum方法,這個也可以理解為獨(dú)立的UserStory)。任何一個業(yè)務(wù)事件都包括了業(yè)務(wù)動作,業(yè)務(wù)對象和對象狀態(tài)三要素。

注意,常用的事件風(fēng)暴法里面更加強(qiáng)調(diào)先找到狹義的事件,即對象狀態(tài)。比如已發(fā)貨,已付款,已凍結(jié)等狀態(tài)事件,然后再去分析狀態(tài)事件對應(yīng)的對象和業(yè)務(wù)操作。在你不熟悉某個領(lǐng)域的時(shí)候大可不必按部就班的這樣做,直接通過業(yè)務(wù)場景和流程梳理出核心的細(xì)粒度業(yè)務(wù)活動點(diǎn)即可。業(yè)務(wù)活動上自然會附著有對象和狀態(tài)。

將事件分解為這三要素后,再次按業(yè)務(wù)對象進(jìn)行聚類。比如訂單是一個業(yè)務(wù)對象,將所有和訂單相關(guān)的業(yè)務(wù)事件全部聚合在一起。

在聚類完成后,每一個聚類就是一個獨(dú)立的限界上下文。

聚合,限界上下文和子域

如果你按上面步驟將每個聚合劃分為一個個獨(dú)立的微服務(wù)。

那么最終的微服務(wù)一定粒度太細(xì)。

因?yàn)槊恳粋€核心的業(yè)務(wù)對象都變成了一個微服務(wù)。

拿一個傳統(tǒng)的供應(yīng)鏈系統(tǒng)來舉例,你會看到采購采購單,采購訂單,物料,供應(yīng)商,框架協(xié)議,入庫單,出庫單,庫存信息,采購計(jì)劃等是核心的功能聚合點(diǎn)。那么一個傳統(tǒng)的供應(yīng)鏈系統(tǒng)需要劃分出好幾十個微服務(wù)?

按事件風(fēng)暴梳理事件并基于對象進(jìn)行功能聚合本身沒有錯。

但是每個聚合本身不能完全1對1映射到微服務(wù)上面。

因此應(yīng)該是將多個相關(guān)的聚合歸并到一起,并以此來劃分限界上下文。限界上下文可以只包含一個聚合,也可以包含多個聚合。

那么子域和限界上下文什么關(guān)系?

一般來講子域和限界上下文之間是對應(yīng)的關(guān)系,但是子域本身也可能是將多個限界上下文合并在一起,形成一個大的子域。

但是不論什么情況。都應(yīng)該意識到不能按單獨(dú)的一個個聚合來劃分微服務(wù)。

真正的問題關(guān)鍵不是聚合,而是如何將多個聚合劃分到一個限界上下文里面。

問題關(guān)鍵-如何將多個聚合劃分到一個上下文或子域

在我自己以前做企業(yè)IT架構(gòu)規(guī)劃的時(shí)候,在進(jìn)行業(yè)務(wù)架構(gòu)規(guī)劃的時(shí)候就經(jīng)常會遇到業(yè)務(wù)域劃分的問題。

其中一個常用的方法就是參考業(yè)界常用的模型,比如供應(yīng)鏈領(lǐng)域有標(biāo)準(zhǔn)的Scor模型可以參考。整個企業(yè)完整業(yè)務(wù)你也可以參考價(jià)值鏈模型。如果你是做電信行業(yè)項(xiàng)目,則有標(biāo)準(zhǔn)的eTom模型可以參考。而產(chǎn)品研發(fā)則完全可以參考IPD模型。

所以參考業(yè)界標(biāo)準(zhǔn)模型是常用的一個劃分業(yè)務(wù)域的方法。

其次,IT人員做架構(gòu)一定不能脫離企業(yè)真實(shí)的業(yè)務(wù)組織架構(gòu)和業(yè)務(wù)運(yùn)作。

還是拿采購類業(yè)務(wù)來說,一個小點(diǎn)的企業(yè)就一個部門供應(yīng)鏈部,會將所有招投標(biāo),供應(yīng)商管理,采購詢價(jià),采購,采購執(zhí)行,庫存管理等一系列事情關(guān)閉搞定。但是對于大集團(tuán)型企業(yè),往往招投標(biāo),采購,物流,供應(yīng)商管理等都是獨(dú)立的部門。至少也是獨(dú)立的科室。

為啥要去觀察企業(yè)本身業(yè)務(wù)組織劃分?

我們實(shí)際來觀察下你會發(fā)現(xiàn)。

拿一個企業(yè)來說,這個企業(yè)的采購部內(nèi)部可能經(jīng)常開會或吵架,但是采購部和招投標(biāo)部之間經(jīng)常就是一些招投標(biāo)結(jié)果信息的傳遞。也就是企業(yè)在劃分業(yè)務(wù)部門或組織的時(shí)候,本身就在考慮如何減少跨部門的交互接口。

這和微服務(wù)拆分里面的微服務(wù)間要盡量解耦是一個道理。

所以再回到多個聚合如何進(jìn)一步歸類的問題也是同樣道理。

當(dāng)你觀察的時(shí)候,你會發(fā)現(xiàn)供應(yīng)商,物料的管理實(shí)際是同一個基礎(chǔ)數(shù)據(jù)管理部門在做。那么這兩個聚合完全是可以劃分到一個限界上下文里面。類似還有采購請購,采購訂單,采購執(zhí)行都是一個部門在做,那么也可以歸到一個上下文。

當(dāng)然你可以從一個完整業(yè)務(wù)流程分析出發(fā),看究竟分為哪些大的階段,一般來說這些階段點(diǎn)都可以作為微服務(wù)劃分的邊界點(diǎn)。

往往比單純的事件風(fēng)暴后,再聚合更加有效。比如電商核心業(yè)務(wù)場景和訂單生命周期如下。

當(dāng)你對核心領(lǐng)域?qū)ο蟮纳芷陔A段梳理清楚后,實(shí)際上已經(jīng)可以明確地識別出關(guān)鍵的上下文邊界和關(guān)鍵的領(lǐng)域?qū)ο蟆1热缟蠄D可以看到商品,訂單,供應(yīng)商,用戶,庫存都是關(guān)鍵的領(lǐng)域?qū)ο螅嚓P(guān)的業(yè)務(wù)操作也圍繞這些業(yè)務(wù)對象展開。

進(jìn)一步思考,從聚合到上下文和子域

當(dāng)談到這里的時(shí)候,自然出現(xiàn)了一個新疑惑。

即采用傳統(tǒng)的按業(yè)界參考模型,大的業(yè)務(wù)流程階段邊界,或者企業(yè)本身的業(yè)務(wù)組織劃分等來劃分微服務(wù),這樣劃分出來的微服務(wù)粒度更加合適,也更加容易滿足高內(nèi)聚,松耦合的需求。那么為何還要采用領(lǐng)域建模去劃分微服務(wù)?

因此從聚合到上下文,這個邏輯如何從技術(shù)上去走通成了問題的關(guān)鍵。

即各個聚合之間本身還有耦合性,我如何去分析哪些聚合應(yīng)該進(jìn)一步歸類到一個限界上下文里面,這有無一種技術(shù)層面的分析方法?

在這里談下我個人的一些思考。

基于核心業(yè)務(wù)活動進(jìn)行聚合

核心業(yè)務(wù)活動一般指最終帶來明確業(yè)務(wù)價(jià)值的活動。

舉例來說采購訂單是核心業(yè)務(wù)活動,而采購申請,框架協(xié)議等是輔助類活動,或前導(dǎo)類活動,最終目的都是形成可執(zhí)行的采購訂單。

付款是核心業(yè)務(wù)活動,而付款申請則是輔助活動,最終為付款服務(wù)。

基于這個思路就可以將諸多的輔助業(yè)務(wù)活動,支撐活動等圍繞核心業(yè)務(wù)活動的多個聚合進(jìn)行歸類,形成上下文邊界。

基于上層業(yè)務(wù)分析底層聚合之間的耦合性

拿供應(yīng)商和物料兩個聚合來說,為何建議放到一個上下文和微服務(wù)里面。

如上圖,在分析業(yè)務(wù)場景的時(shí)候你會發(fā)現(xiàn),對于其它聚合根和供應(yīng)商,物料之間的依賴關(guān)系不是點(diǎn)對點(diǎn)的依賴,而是需要供應(yīng)商和物料聚合后的信息。

供應(yīng)商和物料兩個對象本身沒有耦合性。

當(dāng)時(shí)上層的業(yè)務(wù)場景讓兩個對象之間產(chǎn)生了明顯的耦合性。在這種情況下就需要將其劃分到一個限界上下文里面去。

由于在一個上下文,后續(xù)微服務(wù)劃分對應(yīng)一個數(shù)據(jù)庫,自然也就減少了上層的多次API接口服務(wù)調(diào)用后的應(yīng)用層組裝操作。

希望以上兩點(diǎn)思路對你在劃分上下文邊界的時(shí)候有所幫助。

再次總結(jié)下本文想說明的一些關(guān)鍵內(nèi)容如下。

1.微服務(wù)設(shè)計(jì)到功能和數(shù)據(jù)兩個層面的劃分

2.事件風(fēng)暴到聚合,多個聚合如何劃分到一個上下文是難點(diǎn)

3.基于核心業(yè)務(wù)活動和聚合間耦合性是常用方法

當(dāng)然,這篇文章還有很多沒有思考完善的地方,也歡迎大家提出不同意見并進(jìn)一步探討,方便我后續(xù)對微服務(wù)劃分思路進(jìn)一步優(yōu)化改進(jìn)。

 

責(zé)任編輯:武曉燕 來源: 人月聊IT
相關(guān)推薦

2024-01-08 08:59:40

傳統(tǒng)企業(yè)數(shù)字化癥結(jié)

2019-12-05 09:13:18

通信

2010-03-19 16:08:17

2011-07-14 13:10:44

負(fù)載均衡Nginx

2019-06-19 08:59:52

數(shù)據(jù)庫死鎖堆棧

2021-05-31 10:46:16

自動駕駛特斯拉數(shù)據(jù)

2021-08-17 10:37:10

分層設(shè)計(jì)領(lǐng)域劃分架構(gòu)

2015-04-15 13:48:51

SaaS軟件混合云

2021-11-25 14:14:28

加密貨幣數(shù)字貨幣貨幣

2015-07-03 11:19:43

火車WiFi

2020-07-28 09:48:49

Linux服務(wù)器2.5G

2021-01-18 08:08:16

虛函數(shù)代碼

2022-04-25 10:44:08

微服務(wù)架構(gòu)設(shè)計(jì)

2020-11-03 06:55:41

系統(tǒng)版本64位

2023-01-29 09:06:24

微服務(wù)劃分關(guān)聯(lián)

2015-07-14 11:09:26

SDN

2015-02-27 10:52:17

SDN

2010-03-19 09:40:44

Cisco交換機(jī)

2020-12-01 12:08:45

微服務(wù)架構(gòu)DOMA

2021-01-14 09:55:21

Java微服務(wù)Go
點(diǎn)贊
收藏

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

亚洲人成电影网| 精品久久久久久久中文字幕 | 中文字幕在线视频久| 久久亚洲精品国产精品紫薇| 国产精品永久免费观看| 黄色一级视频免费| 九九热爱视频精品视频| 欧美一区二区三区四区在线观看| 日韩国产一级片| www.亚洲免费| 成人免费看视频| 国产精品亚洲аv天堂网| 免费无遮挡无码永久在线观看视频| 色婷婷久久久| 欧美一区二区三区四区久久 | 国产盗摄——sm在线视频| 欧美韩国日本综合| 国产一区二区在线网站| 亚洲一区精品在线观看| 亚洲精品日本| 久久国产天堂福利天堂| 国产精品av久久久久久无| 中文字幕视频精品一区二区三区| 欧美亚洲一区二区在线| 成品人视频ww入口| 爆操欧美美女| 国产精品久久毛片| 蜜桃传媒视频第一区入口在线看| av免费在线观看不卡| 日本不卡在线视频| 欧美亚洲成人xxx| 国产在线综合网| 国产精品久久久久久久久妇女| 亚洲激情视频在线观看| 色欲无码人妻久久精品| 日韩国产大片| 欧美视频三区在线播放| 丰满人妻中伦妇伦精品app| 天堂亚洲精品| 亚洲特黄一级片| 亚洲精品视频一二三| 日本午夜在线视频| 91最新地址在线播放| 国产高清一区视频| 精品人妻无码一区二区| 国产在线视频不卡二| 国产精品一区二区三区久久久| 区一区二在线观看| 久久国产高清| 日本久久精品视频| 福利网址在线观看| 免费永久网站黄欧美| 欧美亚洲视频在线看网址| 日韩精品成人在线| 在线精品观看| 欧美中文字幕在线观看| 天天操天天摸天天干| 羞羞答答国产精品www一本| 91国内在线视频| 日韩免费视频一区二区视频在线观看| 亚洲高清自拍| 97视频在线观看免费| 欧美一区二区激情视频| 免费看亚洲片| 国产人妖伪娘一区91| 亚洲影视一区二区| 国产精品自在在线| 国产精品久久久久av福利动漫| 黄频在线免费观看| 91蝌蚪国产九色| 日韩欧美三级一区二区| 日本免费在线观看| 亚洲激情自拍偷拍| 91成人在线观看喷潮教学| 制服丝袜专区在线| 欧美视频第二页| 色姑娘综合天天| 欧美激情久久久久久久久久久| 亚洲精品之草原avav久久| 538精品视频| 亚洲国产精品久久久久蝴蝶传媒| 欧美人成在线视频| 日韩 欧美 中文| 看国产成人h片视频| 97视频资源在线观看| 亚洲 国产 欧美 日韩| 国产午夜精品在线观看| 成人在线免费观看网址| 黄色在线观看www| 精品视频全国免费看| 91人妻一区二区三区| 亚洲a级精品| 久久精品国产清自在天天线| 久久一级黄色片| 日日夜夜免费精品视频| 91免费看网站| 福利成人在线观看| 亚洲国产另类精品专区| 中文字幕在线导航| 国产成人tv| 自拍亚洲一区欧美另类| 久久久久人妻一区精品色欧美| 久久九九精品| 999视频在线观看| 国产视频网站在线| 亚洲小说欧美激情另类| 国产又大又黄又猛| 人体久久天天| 九九久久精品一区| 男人天堂视频在线| 不卡视频一二三四| 最近看过的日韩成人| 日本不良网站在线观看| 日韩一区二区在线观看视频| 美女被到爽高潮视频| 狠狠色丁香久久综合频道| 国产精品高潮视频| 亚洲av成人精品毛片| 亚洲精品国产视频| av在线网址导航| 自拍欧美一区| 91精品国产成人| www.久久综合| 亚洲日本韩国一区| 五月天婷婷激情视频| 精品三级在线观看视频| 欧美另类99xxxxx| 亚洲熟女乱色一区二区三区久久久| 91视频在线看| 婷婷无套内射影院| 99精品国产一区二区三区2021| 日韩一级黄色av| 国产第一页在线观看| 91欧美一区二区| 男人日女人逼逼| 久久精品国产亚洲blacked| 欧美成人激情在线| 99久久国产免费| 自拍偷自拍亚洲精品播放| 三年中国国语在线播放免费| 亚洲涩涩av| 5566成人精品视频免费| 日本xxxxxwwwww| 性久久久久久久| 无码国产69精品久久久久网站| 欧美久久成人| 国产精品日本一区二区 | 欧美一区二区三区四区在线| 欧美一级淫片aaaaaa| 亚洲一区精品在线| 亚洲精品久久一区二区三区777| 女人天堂亚洲aⅴ在线观看| 亚洲www永久成人夜色| 久久久久久久久免费视频| 欧美日韩高清一区二区| 永久免费未视频| 国产资源精品在线观看| 欧美美女黄色网| 6080亚洲理论片在线观看| 欧美激情综合色| 日本xxxxwww| 精品美女国产在线| 强伦人妻一区二区三区| 日本在线不卡视频| 一区二区三区av| 久久精品九色| 97精品国产97久久久久久| 亚洲欧美综合在线观看| 在线区一区二视频| 蜜桃av.com| 国产成人精品www牛牛影视| 日本男女交配视频| 久操精品在线| 成人疯狂猛交xxx| 青草视频在线免费直播 | 大地资源二中文在线影视观看| 欧美一级播放| 亚洲午夜在线观看| 亚洲国产视频二区| 国产999精品| 麻豆网站在线看| 精品奇米国产一区二区三区| 久热这里只有精品6| 国产精品乱人伦中文| 性生交大片免费看l| 性欧美xxxx大乳国产app| 亚洲一区3d动漫同人无遮挡 | 不卡免费追剧大全电视剧网站| www.com毛片| 仙踪林久久久久久久999| 国产精选一区二区| 国产精品久久久久久久久免费高清| 欧美成人精品xxx| 美女欧美视频在线观看免费 | 日本黄色一区二区| 欧美丰满艳妇bbwbbw| 久久久久综合网| 韩国三级hd中文字幕有哪些| 亚洲欧美日本日韩| 中文字幕在线中文| 欧美午夜精彩| 狠狠色狠狠色综合人人| 91麻豆精品| 欧洲精品久久久| 午夜dj在线观看高清视频完整版| 亚洲欧美综合另类中字| 精品人妻一区二区三区麻豆91 | 中文字幕av在线一区二区三区| 欧美色图校园春色| 蜜桃视频一区二区三区在线观看| 国产96在线 | 亚洲| 天天色综合色| 人偷久久久久久久偷女厕| 91精品国产自产在线丝袜啪| 国产日韩欧美电影在线观看| 伊人久久国产| 韩国三级电影久久久久久| 国产精品久久麻豆| 最好看的2019的中文字幕视频| 无码国产精品96久久久久| 日韩欧美一区二区不卡| 在线观看色网站| 在线观看一区不卡| 日本韩国欧美中文字幕| 亚洲成av人影院在线观看网| 国产传媒免费在线观看| 国产精品天美传媒| 日韩毛片无码永久免费看| 91小视频免费看| 国产a级黄色片| 国产成人免费高清| 日韩欧美中文在线视频| 国产在线看一区| 久久久久久久久久毛片| 久久99精品国产麻豆婷婷| youjizzxxxx18| 日韩中文字幕av电影| 91淫黄看大片| 日韩电影在线观看电影| 国产精品无码av无码| 亚洲免费在线| 成人小视频在线看| 久久美女性网| 国产日韩成人内射视频 | 亚洲高清久久久| 国产一级片免费| 亚洲国产精品久久人人爱| 欧美黄色一级网站| 亚洲国产中文字幕在线视频综合| 99热精品免费| 亚洲成人激情自拍| 日韩精品成人一区| 日韩欧美在线观看视频| 日韩黄色片网站| 欧美军同video69gay| 国产精品怡红院| 日韩一区二区视频| 成人激情四射网| 日韩精品视频在线免费观看| 三级视频在线播放| 尤物九九久久国产精品的分类| 天堂资源在线中文| 欧美精品一区二区免费| 久久不射影院| 啪一啪鲁一鲁2019在线视频| 亚洲成人va| 91美女福利视频高清| 一区二区三区视频播放| 久久久久久国产精品一区 | 不卡一区在线观看| av小说在线观看| 亚洲欧洲一区二区在线播放| 欧美黄色免费看| 色播五月激情综合网| 一级爱爱免费视频| 精品福利一区二区三区免费视频| 日本成人一区| 久久精品视频在线| 超碰在线97国产| 国产精品一区二区电影| 永久免费精品视频| 日韩欧美一区二区视频在线播放 | 免费成年人高清视频| 国产成a人无v码亚洲福利| 黑人巨大精品欧美| 综合av第一页| 91丝袜一区二区三区| 欧美精品一卡两卡| 亚洲av成人精品毛片| 久久精品久久久久电影| 欧洲一区精品| 91沈先生作品| 奇米亚洲欧美| 99久久免费观看| 青娱乐精品在线视频| 永久免费未满蜜桃| 国产精品免费av| 国产又黄又猛又粗又爽| 日韩一卡二卡三卡国产欧美| 男人av在线| 欧美激情视频免费观看| 播放一区二区| 精品1区2区| 综合天堂av久久久久久久| 国产福利视频在线播放| 国产精品99久久久久久久女警| 在线观看福利片| 一区二区在线观看免费视频播放| 成年人视频免费| 精品99久久久久久| √天堂8在线网| 国产日韩精品在线| 国产精品嫩模av在线| 精品人妻少妇一区二区| 国产主播一区二区三区| 欧美另类z0zx974| 精品女厕一区二区三区| www黄色网址| 精品久久国产精品| 成人在线高清| 欧美重口乱码一区二区| 亚洲黄色视屏| 日韩黄色一区二区| 亚洲女同一区二区| 亚洲天堂网在线视频| 亚洲午夜av久久乱码| 欧美久久天堂| 精品国产福利| 99精品视频免费观看| 蜜臀aⅴ国产精品久久久国产老师| 国产精品久久久久久久蜜臀| 9i精品福利一区二区三区| 亚洲国产精品女人久久久| 国产偷倩在线播放| 91久色国产| 欧美日韩亚洲国产精品| 手机av在线网站| 亚洲精品老司机| 国产av无码专区亚洲a∨毛片| 精品国偷自产在线视频| 国产亚洲高清在线观看| avove在线观看| 国产成人精品综合在线观看| 久草资源在线视频| 欧美岛国在线观看| 欧美hdxxx| 国产免费一区二区| 在线亚洲国产精品网站| 波多野结衣 在线| 日本韩国精品一区二区在线观看| 精品亚洲成a人片在线观看| 国产成人精品日本亚洲专区61| 久久91麻豆精品一区| 国产一区视频免费观看| 日本一区二区三区国色天香 | 亚洲第一福利视频| а√在线中文在线新版| 精品免费视频123区| 免费日韩av片| 亚洲女同二女同志奶水| 91精品国产综合久久小美女| 粗大黑人巨茎大战欧美成人| 国产精品免费一区二区| 国产精品腿扒开做爽爽爽挤奶网站| 中文精品在线观看| 欧美视频在线不卡| aa在线视频| 美国av一区二区三区| 免费欧美在线视频| 超碰手机在线观看| 亚洲第一免费网站| 国精产品一区一区三区四川| 中国成人在线视频| 成人丝袜高跟foot| 黄色av网站免费观看| www.日本久久久久com.| 成人香蕉社区| 中文字幕天天干| 一区二区三区在线观看欧美| 日韩a在线观看| 国产精品影片在线观看| 亚洲第一伊人| 懂色av蜜桃av| 亚洲第一天堂av| 日本黄色一区| www.xxx麻豆| 国产拍揄自揄精品视频麻豆| 精品国产无码一区二区三区| 欧美在线视频一区二区| 午夜国产一区二区| 国产美女视频免费观看下载软件| 欧美亚洲自拍偷拍| 岛国av免费在线观看| 一区二区三区的久久的视频| 国产69精品久久久久777| 天天天天天天天干| 欧美区在线播放| 欧美韩日高清| 亚洲欧美视频在线播放| 欧美一区二区免费视频|