• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)的服務(wù)依賴關(guān)系識別

    2021-10-11 13:10:10楊冬菊張偉達(dá)趙卓峰
    關(guān)鍵詞:關(guān)聯(lián)服務(wù)

    楊冬菊,張偉達(dá),趙卓峰

    (1.大規(guī)模流數(shù)據(jù)集成與分析技術(shù)北京市重點(diǎn)實(shí)驗(yàn)室,北京100144;2.北方工業(yè)大學(xué) 數(shù)據(jù)工程研究院,北京100144)

    0 引言

    隨著服務(wù)計(jì)算技術(shù)的快速發(fā)展,以Web服務(wù)為基礎(chǔ)的面向分布式服務(wù)計(jì)算架構(gòu)模式已經(jīng)成為互聯(lián)網(wǎng)環(huán)境下的主流形態(tài)[1-3]?;ヂ?lián)網(wǎng)上的服務(wù)和軟件資源變得極大豐富。網(wǎng)上網(wǎng)下和跨領(lǐng)域之間建立了密切業(yè)務(wù)聯(lián)系,從而形成了跨網(wǎng)跨域跨世界的大規(guī)模網(wǎng)絡(luò)化復(fù)雜服務(wù)的生態(tài)系統(tǒng)——大服務(wù)[4]。大服務(wù)環(huán)境中的服務(wù)通過跨網(wǎng)跨域跨世界進(jìn)行組合,服務(wù)之間通過建立復(fù)雜的依賴及協(xié)作關(guān)系來處理物理信息空間的大數(shù)據(jù)和復(fù)雜的關(guān)聯(lián)業(yè)務(wù)。在此背景下,服務(wù)具有多樣化、異構(gòu)、復(fù)雜、海量等特點(diǎn),服務(wù)的系統(tǒng)運(yùn)行與協(xié)同互操作模式等發(fā)生了巨大變化,利用云環(huán)境實(shí)現(xiàn)組合服務(wù)的劃分、分布式部署及并行執(zhí)行成為必然趨勢[5-6]。在對組合服務(wù)進(jìn)行合理劃分和分布部署時,需要考慮兩方面因素:①大服務(wù)視角下,服務(wù)之間可能會傳遞大量數(shù)據(jù),即服務(wù)之間存在數(shù)據(jù)依賴,兩個服務(wù)之間的執(zhí)行距離及網(wǎng)絡(luò)延遲會影響組合服務(wù)的總體執(zhí)行效率;②服務(wù)執(zhí)行時除了存在邏輯上的前后依賴關(guān)系,還可能需要頻繁交換控制信息,即服務(wù)之間存在控制依賴,部署在動態(tài)、開放環(huán)境中分布執(zhí)行會由于存在設(shè)備、網(wǎng)絡(luò)等不確定性影響組合服務(wù)的成功執(zhí)行。

    進(jìn)一步剖析上述兩個問題,如何識別并發(fā)現(xiàn)服務(wù)之間存在的數(shù)據(jù)依賴及控制依賴關(guān)系是實(shí)現(xiàn)組合服務(wù)合理劃分、分布部署的前提和基礎(chǔ)。在該過程中,需要解決3個問題:①如何刻畫、設(shè)計(jì)服務(wù)之間的依賴模型;②如何通過對已有服務(wù)關(guān)系的挖掘識別構(gòu)建服務(wù)依賴關(guān)系;③如何基于服務(wù)依賴關(guān)系支撐組合服務(wù)的劃分和分布部署。

    針對上述問題,本文提出一種基于服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)的服務(wù)依賴關(guān)系挖掘方法,通過對已有組合服務(wù)的處理與解析,得到服務(wù)之間的控制流和數(shù)據(jù)流,構(gòu)建服務(wù)關(guān)聯(lián)網(wǎng)絡(luò),并以此為基礎(chǔ)利用圖遍歷算法DFS(depth-first search)、社區(qū)發(fā)現(xiàn)算法Louvain配合改進(jìn)的關(guān)聯(lián)規(guī)則挖掘算法HFPGrowth(Hmark-Frequent Pattern Growth)算法生成服務(wù)依賴圖,通過服務(wù)依賴圖有效地描述服務(wù)之間的依賴關(guān)系的強(qiáng)弱,從而支撐組合服務(wù)的合理劃分與分布部署,提高組合服務(wù)的運(yùn)行效率,減少組合服務(wù)因?yàn)榫W(wǎng)絡(luò)通信等原因?qū)е率〉母怕?。最后通過3個實(shí)驗(yàn)驗(yàn)證了本文方法的可行性和有效性,并通過與經(jīng)典算法的對比分析驗(yàn)證了方法的執(zhí)行效率。

    1 相關(guān)工作

    目前對服務(wù)依賴關(guān)系的研究大多集中在兩方面:①基于服務(wù)依賴關(guān)系實(shí)現(xiàn)服務(wù)的自動組合或組合服務(wù)的演化、優(yōu)化;②基于服務(wù)依賴關(guān)系在組合服務(wù)失效替換時保持其事務(wù)屬性。在實(shí)現(xiàn)方法上,大致可以分為3種:①利用Petri網(wǎng)等理論實(shí)現(xiàn)服務(wù)組合的推理或調(diào)優(yōu)[7-9];②利用機(jī)器學(xué)習(xí)、事件驅(qū)動等手段建立服務(wù)依賴圖,通過服務(wù)依賴圖支撐服務(wù)組合或組合中的服務(wù)替換[10-14];③通過服務(wù)編排建立相應(yīng)的服務(wù)組合演化模型[15]。文獻(xiàn)[7]基于Petri網(wǎng)全局依賴網(wǎng)的服務(wù)組合自動演化,根據(jù)用戶演化需求對服務(wù)組合進(jìn)行正反向演化推理,為服務(wù)組合自動演化提供了形式化描述工具。文獻(xiàn)[8]引入基于Petri擴(kuò)展有色網(wǎng)(Expand Colored Petri Net, ECPN)構(gòu)建支持事務(wù)級屬性的層次化服務(wù)組合模型,然后利用服務(wù)事務(wù)粒度與服務(wù)補(bǔ)償機(jī)制進(jìn)行服務(wù)組合失效替換,促使服務(wù)組合的可信性增強(qiáng)演化。文獻(xiàn)[9]將服務(wù)聚類成服務(wù)簇,然后基于Petri的服務(wù)網(wǎng)元建立相應(yīng)的服務(wù)簇網(wǎng)元及其矩陣模型,根據(jù)失效服務(wù)網(wǎng)元標(biāo)準(zhǔn)矩陣和組合服務(wù)網(wǎng)模型,提出一種替換服務(wù)的快速查找與替換算法。文獻(xiàn)[10]通過一種數(shù)據(jù)服務(wù)依賴圖模型來實(shí)現(xiàn)服務(wù)組合,根據(jù)輸入的用戶數(shù)據(jù)需求約束,在依賴圖上搜索滿足需求的數(shù)據(jù)服務(wù)依賴子圖,然后執(zhí)行組合后的復(fù)合數(shù)據(jù)服務(wù)生成可視化數(shù)據(jù)視圖。文獻(xiàn)[11]將連續(xù)查詢機(jī)制引入可感知服務(wù)質(zhì)量 (Quality of Service, QoS)的自動服務(wù)組合中,以基于事件驅(qū)動的動態(tài)服務(wù)組合演化,通過有向無環(huán)圖建立服務(wù)依賴圖,配合事件驅(qū)動方法主動監(jiān)控并處理動態(tài)服務(wù),進(jìn)而實(shí)現(xiàn)組合優(yōu)化。文獻(xiàn)[12]基于控制依賴和貝葉斯網(wǎng)絡(luò)組合而成貝葉斯服務(wù)依賴圖的錯誤定位方法,用于發(fā)現(xiàn)復(fù)合服務(wù)中的錯誤服務(wù)。文獻(xiàn)[13]通過分析WS-BPEL過程與其成員服務(wù)間的依賴關(guān)系,預(yù)判成員服務(wù)是否動態(tài)更新。文獻(xiàn)[14]基于事件驅(qū)動建立物聯(lián)網(wǎng)業(yè)務(wù)流程,通過對業(yè)務(wù)流程分解,將其劃分為多個服務(wù)和多個協(xié)同邏輯碎片,從而實(shí)現(xiàn)業(yè)務(wù)流程的分布式完全解耦執(zhí)行。文獻(xiàn)[15]通過面向服務(wù)編排建立相應(yīng)的服務(wù)組合演化技術(shù)框架或模型。

    已有研究工作大多基于服務(wù)自動組合、演化及失效替換等出發(fā)點(diǎn)分析服務(wù)依賴,與本文關(guān)注的組合服務(wù)劃分與分布部署差異較大,而且大多只關(guān)注單一的數(shù)據(jù)依賴或控制依賴,顯然無法直接應(yīng)用在復(fù)雜多變的大服務(wù)環(huán)境中。

    2 問題定義及方法原理

    為便于問題定義與理解,以“高速公路緊急事故處置”場景為例作進(jìn)一步說明。該場景定義了一個組合服務(wù)“高速公路緊急事故處置”,將高速公路上處置緊急事故時需要的所有服務(wù)按照邏輯順序組合在一起,如圖1所示。啟動事件為監(jiān)測到事故發(fā)生,首先進(jìn)行事故信息的采集,包括事故發(fā)生的時間、地點(diǎn)、當(dāng)前路段的流量和車速、最近幾個收費(fèi)站的車流量、當(dāng)前的天氣情況、事故地點(diǎn)附近的收費(fèi)站或路段監(jiān)控攝像頭等,根據(jù)這些數(shù)據(jù)對事故級別進(jìn)行判定,包括車輛損傷程度、有無人員傷亡、有無惡劣天氣、有無道路損毀等,然后對事故進(jìn)行相應(yīng)處置,包括警車和救護(hù)車等應(yīng)急車輛的調(diào)度以及其他車輛的管控,前者搜索范圍內(nèi)的緊急車輛并進(jìn)行緊急通知,后者根據(jù)收費(fèi)站、路段管控范圍等生成管控方案。

    分析上述組合服務(wù)發(fā)現(xiàn),部分服務(wù)之間需要傳輸大量數(shù)據(jù),如圖1中事故判定的前提是需要路段流量計(jì)算、氣象監(jiān)測、路段攝像頭等服務(wù)操作提供的事故數(shù)據(jù)采集信息才能進(jìn)行事故計(jì)算等操作,因此在事故數(shù)據(jù)采集服務(wù)和事故處理服務(wù)之間會傳輸這些實(shí)時、大量數(shù)據(jù)。除了服務(wù)之間存在流程上的邏輯依賴關(guān)系,在部分服務(wù)之間存在頻繁的信息交互,如警車、救護(hù)車調(diào)度和查找并通知服務(wù),如果查找指定的范圍內(nèi)救護(hù)車和警車不符合調(diào)度條件,則需要擴(kuò)大搜索范圍進(jìn)行二次通知,依次迭代下去,直至符合調(diào)度條件為止,因此在應(yīng)急車輛調(diào)度服務(wù)和警車調(diào)度服務(wù)、救護(hù)車調(diào)度服務(wù)之間存在較為頻繁的信息交互。如果將這些相互具有強(qiáng)依賴性的服務(wù)隨機(jī)部署在不同的節(jié)點(diǎn)或網(wǎng)絡(luò)環(huán)境上,大量數(shù)據(jù)傳輸時網(wǎng)絡(luò)距離或網(wǎng)絡(luò)開銷會直接影響組合服務(wù)的執(zhí)行效率,同時頻繁的信息交互會由于動態(tài)、開放環(huán)境下設(shè)備、網(wǎng)絡(luò)等的不確定性影響執(zhí)行結(jié)果。

    在上述過程中,識別并發(fā)現(xiàn)服務(wù)之間存在的數(shù)據(jù)依賴及控制依賴關(guān)系成為要解決的核心問題,依據(jù)服務(wù)依賴關(guān)系實(shí)現(xiàn)組合服務(wù)的合理劃分與分布部署執(zhí)行,更好地支撐分布式環(huán)境下組合服務(wù)的高效、可靠執(zhí)行。由此本文提出一種基于已有組合服務(wù)構(gòu)建服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)并根據(jù)服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)識別服務(wù)依賴關(guān)系的方法。首先對組合服務(wù)進(jìn)行預(yù)處理,解析得到服務(wù)之間的前驅(qū)后繼關(guān)系及數(shù)據(jù)交互情況,利用有向圖構(gòu)建服務(wù)關(guān)聯(lián)網(wǎng)絡(luò),然后對服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)進(jìn)行深度遍歷和挖掘,形成由數(shù)據(jù)依賴圖和控制依賴圖組合而成的服務(wù)依賴圖,依據(jù)服務(wù)依賴圖實(shí)現(xiàn)組合服務(wù)的劃分。方法原理如圖2所示。

    3 服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)模型及構(gòu)建

    3.1 服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)模型

    定義1服務(wù)(AS)。指服務(wù)提供者與消費(fèi)者之間為共同創(chuàng)造價值而進(jìn)行的某種交互協(xié)作,往往表現(xiàn)為交互界面、功能實(shí)體等。它可以由軟件實(shí)現(xiàn),也可以由人工或人機(jī)實(shí)現(xiàn),可以是不可再分的原子服務(wù),也可以是抽象服務(wù)。為簡化操作,本文暫時只考慮軟件定義的原子服務(wù)??梢员硎緸榫旁M:

    AS=

    Type,Community,Operations>。

    其中:Id是AS的唯一標(biāo)識符;Name是AS的名稱;Desc是AS的語義描述;Input是AS的輸入?yún)?shù)集合,Input(AS)={IP1,IP2,…,IPn},其中IP代表其中的輸入?yún)?shù);Output是AS的輸出參數(shù)集合,Output(AS)={OP1,OP2,…,OPn},其中OP代表其中的輸出參數(shù);Publisher是AS的提供商;Type是流程中AS的類型標(biāo)識,有start、middle、end等;Community是AS所屬社區(qū);Operations是AS的執(zhí)行操作。

    定義2服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)(SN)。記錄服務(wù)之間關(guān)聯(lián)關(guān)系的網(wǎng)絡(luò)。它可表示為一個有向圖。

    SN=,

    式中:V是有向圖的頂點(diǎn)集,V={AS1,AS2,…,ASn},ASi∈AS,1≤i≤n;E是有向圖的邊集,E=V×V={(ASi,ASj,R) |ASi,ASj∈V,ASi→ASj(ASi和ASj存在某種關(guān)聯(lián)關(guān)系),R是關(guān)系的類型,1≤i,j≤n}。其中,R∈{“RDD”,“RCD”},當(dāng)R=“RDD”時,表示兩個服務(wù)之間具有數(shù)據(jù)依賴關(guān)系,當(dāng)R=“RCD”時,表示兩個服務(wù)之間具有控制依賴關(guān)系。

    定義3服務(wù)組合(SC)。將多個服務(wù)組合在一起完成復(fù)雜的業(yè)務(wù)需求,采用BPMN 2.0規(guī)范[16]進(jìn)行描述。數(shù)學(xué)表達(dá)式采用類BNF范式[17]表示為:

    SC::=X|ASs⊙ASm|ASs◇ASm|ASs?ASm

    |ASs△ASm|ASs||cASm|ASs#ASm。

    其中:X表示服務(wù)或者空服務(wù);ASs⊙ASm,ASs◇ASm,ASs?ASm,ASs△ASm,ASs||cASm分表表示圖3所示Sequence、And-Join、Or-Join、And-Split、Or-Split五種控制結(jié)構(gòu)[18]。大部分復(fù)雜控制結(jié)構(gòu)都可以由這5種變遷組合構(gòu)成,ASs#ASm表示ASs和ASm之間存在數(shù)據(jù)流。

    定義4數(shù)據(jù)依賴(RDD)。在服務(wù)組合執(zhí)行的過程中,如果兩個AS之間存在業(yè)務(wù)的數(shù)據(jù)交互,即存在服務(wù)ASs,ASm,使得Output(ASs)∩Input(ASm)≠?&&Q(Output(ASs),Input(ASm))>Y,則稱ASs,ASm之間存在數(shù)據(jù)依賴關(guān)系,記作RDD(ASs,ASm)。ASs稱作ASm的數(shù)據(jù)流前驅(qū),ASm稱作ASs的數(shù)據(jù)流后繼。其中Y是閾值,Q(C1,C2)表示兩個集合的交集閾值函數(shù),參數(shù)C代表集合。

    定義5控制依賴(RCD)。在服務(wù)組合執(zhí)行的過程中,服務(wù)之間的執(zhí)行是有前后順序的,這是服務(wù)業(yè)務(wù)邏輯之間的依賴,稱為控制依賴。5種結(jié)構(gòu)下的控制依賴描述如下:

    (1)Sequence結(jié)構(gòu)下,有ASs⊙ASm,表示服務(wù)ASs執(zhí)行后才能夠執(zhí)行ASm。此時ASs是ASm的控制前驅(qū),ASm是ASs的控制后繼,則ASs和ASm之間存在控制依賴,記作RCD(ASs,ASm)。

    (2)Or-Split結(jié)構(gòu)下,有ASs◇ASi,?ASi∈{AS1,AS2,…,ASn},1≤i≤n,表示在服務(wù)ASs執(zhí)行后選擇執(zhí)行AS1,AS2,…,ASn中的其中一個服務(wù)。在此情況下,任意ASi要么不執(zhí)行,要么一定在ASs后執(zhí)行,則ASs和ASi之間存在控制依賴,記作RCD(ASs,ASi)。

    (3)Or-Join結(jié)構(gòu)下,有ASi?ASm,?ASi∈{AS1,AS2,…,ASn},1≤i≤n,表示在服務(wù)AS1,AS2,…,ASn中至少一個執(zhí)行完畢后才能夠執(zhí)行服務(wù)ASm。在此情況下,ASi和ASm之間存在控制依賴,記作RCD(ASs,ASi)。

    (4)And-Split和And-Join結(jié)構(gòu)與前面類似,不再贅述。

    3.2 服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)構(gòu)建與更新

    遍歷并解析已有組合服務(wù)得到包含的服務(wù)及其前驅(qū)后繼依賴關(guān)系,轉(zhuǎn)化成有向圖模型進(jìn)行描述與存儲,得到服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)。當(dāng)有新的組合服務(wù)加入時,需要識別并判斷服務(wù)節(jié)點(diǎn)、關(guān)系在已有服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)中是否存在并根據(jù)不同的策略更新合并。具體步驟如下:

    步驟1數(shù)據(jù)預(yù)處理。讀取已有服務(wù)組合,根據(jù)前驅(qū)后繼將服務(wù)標(biāo)注type屬性,start、middle、end分別表示一個服務(wù)組合的執(zhí)行啟動服務(wù)、中間服務(wù)以及結(jié)束服務(wù)。

    步驟2解析提取數(shù)據(jù)。對服務(wù)組合進(jìn)行解析得到包含的服務(wù)及其關(guān)系,篩選具有數(shù)據(jù)依賴或控制依賴關(guān)系的服務(wù)節(jié)點(diǎn)對,分別存儲為節(jié)點(diǎn)數(shù)據(jù)以及關(guān)系數(shù)據(jù)。

    步驟3利用上述數(shù)據(jù)初始化構(gòu)建服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)。以前述“高速公路緊急事故處置”為例,建立的服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)如圖4所示。

    步驟4當(dāng)有新的組合服務(wù)加入時,首先判斷服務(wù)節(jié)點(diǎn)及關(guān)系在已有服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)中是否存在,假設(shè)關(guān)聯(lián)網(wǎng)絡(luò)中存在服務(wù)節(jié)點(diǎn)及關(guān)系,ASs→ASm,RDD(ASs,ASm)&&RCD(ASs,ASm),新加入的服務(wù)節(jié)點(diǎn)及關(guān)系是,AS1→AS2,RDD(AS1,AS2)&&RCD(AS1,AS2),則具體更新策略如圖5所示。

    (1)當(dāng)ASs=AS1,ASm≠AS2時,加入服務(wù)節(jié)點(diǎn)AS2以及關(guān)系RCD、RDD,更新后如圖5中①所示。

    (2)當(dāng)ASs=AS2,ASm=AS1時,則說明兩個服務(wù)節(jié)點(diǎn)都存在,但是關(guān)系方向有變化,則節(jié)點(diǎn)不變,在兩個節(jié)點(diǎn)之間加入新的關(guān)系,如圖5中②所示。

    (3)當(dāng)ASs≠AS1,ASm=AS2時,加入服務(wù)節(jié)點(diǎn)AS1以及關(guān)系RCD、RDD,更新后如圖5中③所示。

    (4)當(dāng)ASs≠AS2,ASm=AS1時,加入服務(wù)節(jié)點(diǎn)AS2以及相應(yīng)的關(guān)系RCD、RDD,更新后如圖5中④所示。

    (5)當(dāng)ASs=AS2,ASm≠AS1時,加入服務(wù)節(jié)點(diǎn)AS1以及相應(yīng)的關(guān)系RCD、RDD,更新后如圖5中⑤所示。

    (6)當(dāng)ASs≠AS1,ASm≠AS2時,新建立服務(wù)節(jié)點(diǎn)AS1、AS2以及關(guān)系RCD、RDD,更新后如圖5中⑥所示。

    (7)當(dāng)ASs=AS1,ASm=AS2時,則認(rèn)為已經(jīng)存在,不做變更。

    若RCD、RDD只存在一種,則處理策略類似。

    步驟5節(jié)點(diǎn)由于宕掉或者其他原因退出網(wǎng)絡(luò),此時也要匹配節(jié)點(diǎn)以及節(jié)點(diǎn)周圍的關(guān)聯(lián)關(guān)系,一起退出網(wǎng)絡(luò)。

    4 服務(wù)依賴關(guān)系識別

    4.1 數(shù)據(jù)依賴圖

    服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)中記錄了服務(wù)節(jié)點(diǎn)的類型屬性(start、middle、end)和服務(wù)之間的數(shù)據(jù)依賴關(guān)系,依據(jù)類型屬性及數(shù)據(jù)依賴關(guān)系對服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)進(jìn)行遍歷,抽取相關(guān)服務(wù)節(jié)點(diǎn)及其關(guān)系得到數(shù)據(jù)依賴圖。數(shù)據(jù)依賴圖是服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)在數(shù)據(jù)依賴維度上的投影。在該過程中,使用深度優(yōu)先搜索遍歷所有數(shù)據(jù)依賴項(xiàng),算法如下:

    算法1服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)遍歷associatedNetworkDFS(Graph associatedNetwork, Type start, Type end,String Y)。

    輸入:服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)associatedNetwork,啟動服務(wù)(start),結(jié)束服務(wù)(end),閾值Y;

    輸出:數(shù)據(jù)依賴圖dataDependenceGraph。

    1.if (d==associatedNetwork.Depth() && Node nextNode.type.equals(end){//d的初始值為1表示圖的深度

    2. return dataDependGraph.put(nextNode,Y); //根據(jù)閾值返回強(qiáng)弱數(shù)據(jù)依賴圖

    3. for (Node nextNode in start){//遍歷跟節(jié)點(diǎn)n相鄰的節(jié)點(diǎn)nextNode,

    4. if (!visit[nextNode]){//未訪問過的節(jié)點(diǎn)才能繼續(xù)搜索

    5. visit[nextNode]=true; //搜索過的節(jié)點(diǎn)設(shè)置成已訪問

    6. if (DFS(nextNode, d+1)){ return true;}//如果搜索出有解

    7.visit[nextNode]=false; //重新設(shè)置成未訪問

    8. }

    9. }

    10. return ;

    11. }

    4.2 控制依賴圖

    在實(shí)際環(huán)境中,服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)會出現(xiàn)分布不均勻的情況,表現(xiàn)為有向圖上的節(jié)點(diǎn)入度或出度從1~n分布,有些節(jié)點(diǎn)只存在單路徑。這些數(shù)據(jù)在關(guān)聯(lián)分析時對結(jié)果影響很小,但是對分析效率影響很大,因此提出一種社區(qū)發(fā)現(xiàn)與關(guān)聯(lián)規(guī)則挖掘組合方法。首先使用社區(qū)發(fā)現(xiàn)算法(Louvain)將服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)劃分成多個社區(qū),每個社區(qū)內(nèi)形成一個服務(wù)網(wǎng)絡(luò),去掉處于獨(dú)立狀態(tài)的節(jié)點(diǎn),形成有向連通圖。然后在傳統(tǒng)FPGrowth算法基礎(chǔ)上進(jìn)行改進(jìn),提出HFPGrowth算法對篩選后的服務(wù)社區(qū)進(jìn)行關(guān)聯(lián)規(guī)則分析,利用分析結(jié)果構(gòu)建控制依賴圖??刂埔蕾噲D是服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)在控制關(guān)系維度上投影與分析的結(jié)果,能夠記錄服務(wù)之間存在的控制依賴關(guān)系。

    4.2.1 社區(qū)發(fā)現(xiàn)算法-Louvain

    Louvain算法基于模塊度(如式(1))進(jìn)行社區(qū)發(fā)現(xiàn),該算法在效率和效果上均表現(xiàn)較好,并且能夠發(fā)現(xiàn)層次性的社區(qū)結(jié)構(gòu),其優(yōu)化的目標(biāo)是最大化整個圖屬性結(jié)構(gòu)(關(guān)聯(lián)網(wǎng)絡(luò))的模塊度。

    (1)

    其中:m為圖中邊的總數(shù)量,ki表示所有指向節(jié)點(diǎn)i的連邊權(quán)重之和,kj同理。Aij表示節(jié)點(diǎn)i,j之間的連邊權(quán)重。δ(u,v)判斷節(jié)點(diǎn)u和v是否在同一社區(qū),算法主要步驟如下:

    (1)將圖中的每個節(jié)點(diǎn)看作一個社區(qū);

    (2)對每個節(jié)點(diǎn),依次嘗試將節(jié)點(diǎn)分配到其每個鄰居所在的社區(qū),計(jì)算分配前與分配后的模塊度變化,并記錄分配后模塊度最大的那個點(diǎn)。選擇對應(yīng)模塊度最大的點(diǎn),加入其所在社區(qū);

    (3)重復(fù)步驟(2),直至每個節(jié)點(diǎn)的社區(qū)歸屬不再變化;

    (4)壓縮每個社區(qū),將其壓縮成一個新的節(jié)點(diǎn),這時,邊的權(quán)重為兩個節(jié)點(diǎn)內(nèi)所有原始節(jié)點(diǎn)的邊權(quán)重之和;

    (5)迭代上述步驟,直至圖中模塊度不再變化。

    算法2社區(qū)發(fā)現(xiàn)算法graphLouvain(Graph associatedNetwork)。

    輸入:服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)圖associatedNetwork;

    輸出:劃分后服務(wù)社區(qū)CommunityGraph。

    1.associatedNetwork.initSingletonClusters();//網(wǎng)絡(luò)初始化

    2.nodeNumber=associatedNetwork.getNodeNumber();//獲取圖中節(jié)點(diǎn)的數(shù)量

    3. while(localCommunity){ //當(dāng)局部社區(qū)的結(jié)構(gòu)不再發(fā)生變化

    4. for i=1 to nodeNumber {//其中nodeNumber為網(wǎng)絡(luò)中的節(jié)點(diǎn)數(shù)量

    5. Cn=searchNeighbor(i).getCommunity; //獲取節(jié)點(diǎn)i的鄰居節(jié)點(diǎn)的社區(qū)屬性

    6. △Q=calcModularityFunction(i,Cn); //計(jì)算節(jié)點(diǎn)i移入Cn之后模塊度增量

    7.Cmax=maxModularityCommunity(△Q); // 計(jì)算使模塊度最大化的鄰居

    8. Ci=getCommunity(i);

    9.if(Ci !=Cmax){ Ci=Cmax;} //i所在社區(qū)Ci不同于最大值,修改為最大值

    10. update Community(); //形成新的社區(qū)超點(diǎn)

    11.restructuringNetwork(Ci); //重新構(gòu)造網(wǎng)絡(luò)

    12. }

    13.buildHierarchicalCommunityStructure();

    14. Listcommunities ;

    15. returnCommunityGraph.put(community);

    16. }

    4.2.2 關(guān)聯(lián)規(guī)則挖掘算法-HFPGrowth算法

    數(shù)據(jù)的關(guān)聯(lián)分析能夠從大規(guī)模數(shù)據(jù)中分析并挖掘有價值的關(guān)聯(lián)性知識,主要通過關(guān)聯(lián)規(guī)則挖掘來實(shí)現(xiàn),本文對傳統(tǒng)的FPGrowth算法進(jìn)行改進(jìn),使其在面對大規(guī)模的服務(wù)組合環(huán)境下,在執(zhí)行效率和結(jié)果正確率上都有一定提升。

    在傳統(tǒng)算法中,需要利用FP-Tree構(gòu)造算法生成一個包含完整頻繁項(xiàng)信息的FP樹,其中FP樹的頻繁項(xiàng)頭表中擁有ItemName(項(xiàng)名稱)、Count(到達(dá)節(jié)點(diǎn)子路徑數(shù))、NextLink(指針,指向FP樹中同名的第一個節(jié)點(diǎn))。在該過程中,首先構(gòu)造FP樹是無序的,導(dǎo)致后序遍歷出大量無序結(jié)果,這在服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)中是不允許的,因?yàn)榉?wù)之間存在依賴關(guān)系,即有業(yè)務(wù)邏輯順序。其次,在構(gòu)造FP樹的過程中,若新增節(jié)點(diǎn)在樹中要新啟一個分支,即沒有同父節(jié)點(diǎn),則需要在項(xiàng)頭表中找到與該節(jié)點(diǎn)同ItemName的節(jié)點(diǎn),遍歷其列表,直至最后一個同名節(jié)點(diǎn)的域,向最后追加此節(jié)點(diǎn)。這樣,每當(dāng)數(shù)據(jù)量較大時,每次都要遍歷到最后再追加,執(zhí)行效率會受影響。

    針對上述問題,本文在FP樹的構(gòu)造節(jié)點(diǎn)提出一種優(yōu)化樹、表結(jié)構(gòu)的方法,具體如下:

    (1)要絕對保持對事務(wù)集合中的服務(wù)的執(zhí)行順序,剔除非頻繁1項(xiàng)集后取消其對原始數(shù)據(jù)的排序操作。

    (2)在原有的項(xiàng)頭表的基礎(chǔ)上添加一個新的屬性Hmark。用于記錄每一個數(shù)據(jù)項(xiàng)當(dāng)前的頭結(jié)點(diǎn),通過對這種新的頻繁項(xiàng)頭表數(shù)據(jù)結(jié)構(gòu),執(zhí)行insert_tree()操作后在項(xiàng)頭表Hmark前插入節(jié)點(diǎn),并把Hmark指向最新插入的節(jié)點(diǎn)。這樣可以避免遍歷操作,減少FP樹的構(gòu)建時間。

    優(yōu)化后的項(xiàng)頭表數(shù)據(jù)結(jié)構(gòu)如表1所示。

    表1 項(xiàng)頭表數(shù)據(jù)結(jié)構(gòu)

    算法3關(guān)聯(lián)規(guī)則挖掘算法HFPGrowth (List>SD , intminsup)。

    輸入:原始事務(wù)集合SD,最小支持度minSup

    輸出:控制依賴圖controlDependenceGraph

    1. Collection freqMap=getFrequencyAndSup(SD); // 計(jì)算頻數(shù)以及支持度

    2. Mapheaders=new HashMap(); // 構(gòu)建項(xiàng)頭表Head

    3.TreeNode tree=new TreeNode("Null"); //構(gòu)建根為null的空樹

    4. for(item in SD){ //向樹中插入節(jié)點(diǎn)

    5. if(tree.traverse(p)){ //遍歷FPtree

    6. count(N)++;,//如果樹中有N.itemName=p.itemName,N計(jì)數(shù)增加

    7. }else{

    8. Node node=new Node(N); //創(chuàng)建新節(jié)點(diǎn)

    9. count(n)=1; //計(jì)數(shù)置為1

    10. tree.add(node); //鏈接到樹中

    11. headers.add(Hmark,node); //在與同名的頻繁項(xiàng)頭表,插入到Hmark前,并設(shè)置此節(jié)點(diǎn)為新的Hmark。

    12. }

    13. if(!p){insert_tree(p.next,tree)}//如果p非空繼續(xù)遞歸

    14.}

    15. Map, Integer>pattens=fpTree.getFrequentItems();

    16. Listrules=fpTree.getAssociateRule();//對FP樹進(jìn)行關(guān)聯(lián)規(guī)則挖掘

    17. returncontrolDependenceGraph.put(rules);//返回控制依賴圖

    為了能夠更加準(zhǔn)確形象地表現(xiàn)服務(wù)之間的依賴關(guān)系,同時避免單一依賴關(guān)系的局限性,將4.1節(jié)中得到的數(shù)據(jù)依賴圖和4.2節(jié)中得到的控制依賴圖通過匹配不同節(jié)點(diǎn)、計(jì)算重疊節(jié)點(diǎn)和關(guān)系的方式進(jìn)行合并,形成服務(wù)依賴圖。

    5 實(shí)驗(yàn)驗(yàn)證

    本文描述的方法使用Java、Spark與Python實(shí)現(xiàn),圖數(shù)據(jù)庫采用GraphXR+Neo4j,源數(shù)據(jù)庫采用Mysql,網(wǎng)絡(luò)拓?fù)洳捎肕ATLAB完成。

    為驗(yàn)證本文方法的有效性,設(shè)計(jì)了3個實(shí)驗(yàn):實(shí)驗(yàn)一是功能驗(yàn)證,首先從ProgrammableWeb[注]https://www.programmableweb.com/。上爬取服務(wù),利用MATLAB生成的網(wǎng)絡(luò)拓?fù)鋵⑦@些服務(wù)進(jìn)行映射,分析并提取數(shù)據(jù),形成服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)。然后基于服務(wù)關(guān)聯(lián)網(wǎng)絡(luò),利用圖遍歷計(jì)算出數(shù)據(jù)依賴圖,利用Louvain+HFPGrowth組合算法完成控制依賴圖的獲取,構(gòu)建服務(wù)依賴圖,形成可視化展示。

    實(shí)驗(yàn)二是算法的執(zhí)行時間驗(yàn)證,將HFPGrowth算法和傳統(tǒng)的Apriori、FPGrowth算法在同樣的社區(qū)服務(wù)網(wǎng)絡(luò)上執(zhí)行,對比執(zhí)行時間。

    實(shí)驗(yàn)三是算法的結(jié)果驗(yàn)證,將Louvain+HFPGrowth組合算法與傳統(tǒng)的Apriori、FPGrowth算法基于原始的服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)圖上進(jìn)行實(shí)驗(yàn),比對執(zhí)行結(jié)果。

    5.1 實(shí)驗(yàn)環(huán)境及數(shù)據(jù)

    實(shí)驗(yàn)環(huán)境為Intel(R) Core(TM) i5-5200U CPU @2.20 GHz 2.19 GHz.操作系統(tǒng)為Windows 10家庭版64位,8 GB內(nèi)存。實(shí)驗(yàn)工具為IntelliJ IDEA 2018.3.5、PyCharm 2018.2.3、Neo4j 3.5.16、Graph XRv2.2.1、Mysql 5.7以及MATLAB R2014a。

    實(shí)驗(yàn)數(shù)據(jù)采用網(wǎng)絡(luò)爬取與隨機(jī)匹配相結(jié)合的方案,首先在ProgrammableWeb上爬取了600個RESTful API作為服務(wù),在MATLAB上使用改進(jìn)的Salama網(wǎng)絡(luò)拓?fù)潆S機(jī)生成算法服務(wù)組合的網(wǎng)絡(luò)環(huán)境,構(gòu)造了102個服務(wù)組合,每個服務(wù)組合包含2-16個原子服務(wù),將這些與Salama中的網(wǎng)絡(luò)進(jìn)行映射。每個服務(wù)都含有前述九元組的信息。

    5.2 實(shí)驗(yàn)及結(jié)果分析

    (1)實(shí)驗(yàn)一:功能驗(yàn)證

    將構(gòu)造的102個服務(wù)組合節(jié)點(diǎn)和關(guān)系數(shù)據(jù)導(dǎo)出為CSV文件存儲。使用LoadCSV將上述節(jié)點(diǎn)和關(guān)系導(dǎo)入到Neo4j中,形成初始服務(wù)關(guān)聯(lián)網(wǎng)絡(luò),使用GraphXR進(jìn)行可視化,如圖6所示。首先使用深度優(yōu)先遍歷算法DFS對圖6進(jìn)行遍歷。獲得如圖7所示數(shù)據(jù)依賴圖,黃綠紅分別代表start、middle、end節(jié)點(diǎn)。藍(lán)色箭頭代表數(shù)據(jù)流的方向,兩端是擁有數(shù)據(jù)依賴關(guān)系的服務(wù)節(jié)點(diǎn)。然后使用Louvain算法對服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)進(jìn)行社區(qū)劃分,結(jié)果如圖8所示。100個節(jié)點(diǎn)的服務(wù)網(wǎng)絡(luò)劃分為20個社區(qū),并將每個服務(wù)所屬的社區(qū)號存儲回Community屬性中。最后就是對Louvain算法劃分出來的每個社區(qū)利用HFPGrowth算法進(jìn)行關(guān)聯(lián)規(guī)則挖掘,得到控制依賴圖,合并數(shù)據(jù)依賴與控制依賴后的最終服務(wù)依賴圖如圖9所示。

    (2)實(shí)驗(yàn)二:比較算法的執(zhí)行時間

    在前述20個社區(qū),分別使用HFPGrowth算法、Apriori算法、FPGrowth算法進(jìn)行關(guān)聯(lián)規(guī)則挖掘,并比較算法執(zhí)行時間,選取支持度為4~9,這里的支持度考慮了總的數(shù)據(jù)量和實(shí)際數(shù)據(jù)參考的值,同時,每一種方法進(jìn)行10次實(shí)驗(yàn),對10次實(shí)驗(yàn)結(jié)果的平均執(zhí)行時間進(jìn)行對比,結(jié)果如圖10所示,相比FPGrowth算法,改進(jìn)后的算法約有20%的運(yùn)行效率提升。

    (3)實(shí)驗(yàn)三:比較算法結(jié)果

    將Louvain+HFPGrowth組合算法、Apriori、FPGrowth三種算法在實(shí)驗(yàn)一構(gòu)造的服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)圖數(shù)據(jù)上進(jìn)行實(shí)驗(yàn),算法執(zhí)行結(jié)果如表2所示。在同樣的支持度下,Louvain+HFPGrowth的組合算法通過縮小范圍從而獲取符合服務(wù)依賴圖的有序的關(guān)聯(lián)規(guī)則項(xiàng),有序的關(guān)聯(lián)規(guī)則在實(shí)際環(huán)境下更能真實(shí)的體現(xiàn)服務(wù)組合運(yùn)行過程中服務(wù)之間的執(zhí)行過程,而Apriori和FPGrowth算法則是獲得了很多無序等無用的關(guān)聯(lián)規(guī)則項(xiàng)。

    表2 3種算法下的結(jié)果挖掘數(shù)量對比

    6 結(jié)束語

    服務(wù)依賴關(guān)系的挖掘分析是近幾年服務(wù)計(jì)算領(lǐng)域的研究熱點(diǎn)。本文提出一種基于服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)的服務(wù)依賴關(guān)系識別分析方法,首先利用有向圖刻畫服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)模型,探索了一種通過已有組合服務(wù)分析服務(wù)控制流和數(shù)據(jù)流并構(gòu)建服務(wù)關(guān)聯(lián)網(wǎng)絡(luò)的方法。利用圖遍歷算法、社區(qū)發(fā)現(xiàn)算法及改進(jìn)的HFPGrowth算法識別并抽取服務(wù)之間的數(shù)據(jù)依賴及控制依賴關(guān)系生成服務(wù)依賴圖,通過服務(wù)依賴圖實(shí)現(xiàn)服務(wù)依賴關(guān)系的識別。最后通過實(shí)驗(yàn)驗(yàn)證了方法的可行性和有效性,并通過與幾種經(jīng)典算法的對比分析驗(yàn)證方法的效率。

    服務(wù)依賴關(guān)系不僅能夠支撐組合服務(wù)的劃分與分布部署執(zhí)行,還可以進(jìn)一步支撐組合服務(wù)的構(gòu)建、演化、以及組合服務(wù)的失效替換等。本文在這方面進(jìn)行了探索和嘗試。未來一方面擬結(jié)合服務(wù)鏈路執(zhí)行動態(tài)數(shù)據(jù)對服務(wù)依賴關(guān)系進(jìn)行修正與優(yōu)化,另一方面將與分布式引擎結(jié)合進(jìn)一步驗(yàn)證方法的有效性和執(zhí)行效率。

    猜你喜歡
    關(guān)聯(lián)服務(wù)
    不懼于新,不困于形——一道函數(shù)“關(guān)聯(lián)”題的剖析與拓展
    “苦”的關(guān)聯(lián)
    服務(wù)在身邊 健康每一天
    “一帶一路”遞進(jìn),關(guān)聯(lián)民生更緊
    服務(wù)在身邊 健康每一天
    服務(wù)在身邊 健康每一天
    服務(wù)在身邊 健康每一天
    服務(wù)在身邊 健康每一天
    奇趣搭配
    招行30年:從“滿意服務(wù)”到“感動服務(wù)”
    商周刊(2017年9期)2017-08-22 02:57:56
    国产综合懂色| 超碰av人人做人人爽久久| 九色成人免费人妻av| 久久久久久伊人网av| 国产成人精品婷婷| 搡老乐熟女国产| 亚洲最大成人av| 99九九线精品视频在线观看视频| 青春草亚洲视频在线观看| 亚洲国产精品成人综合色| 亚洲高清免费不卡视频| 亚洲精品久久午夜乱码| 中文精品一卡2卡3卡4更新| 日韩欧美三级三区| 少妇被粗大猛烈的视频| 欧美日韩在线观看h| 午夜福利在线在线| 亚洲av中文av极速乱| 中文字幕久久专区| 久久久精品欧美日韩精品| 免费看av在线观看网站| 夜夜爽夜夜爽视频| 婷婷色麻豆天堂久久| 最近最新中文字幕大全电影3| 久久久久久久午夜电影| 欧美三级亚洲精品| 韩国高清视频一区二区三区| 国产成人91sexporn| 波多野结衣巨乳人妻| 亚洲精品国产av成人精品| 精品一区二区三区人妻视频| 高清毛片免费看| 丝袜美腿在线中文| 日韩欧美三级三区| 成人毛片60女人毛片免费| 国产午夜精品一二区理论片| 人妻系列 视频| 亚洲av一区综合| 久久精品久久久久久噜噜老黄| 内射极品少妇av片p| 国产色爽女视频免费观看| 久久97久久精品| 国产女主播在线喷水免费视频网站 | 久久综合国产亚洲精品| 国产真实伦视频高清在线观看| 大话2 男鬼变身卡| 国产白丝娇喘喷水9色精品| 视频中文字幕在线观看| 亚洲精品亚洲一区二区| 女人被狂操c到高潮| 日本爱情动作片www.在线观看| 黄片wwwwww| 亚洲精华国产精华液的使用体验| 欧美xxxx性猛交bbbb| 97在线视频观看| 亚洲精品日韩在线中文字幕| 99re6热这里在线精品视频| 如何舔出高潮| 久久国内精品自在自线图片| 日韩av不卡免费在线播放| 久久久久久久国产电影| 一级毛片久久久久久久久女| 人妻一区二区av| 高清欧美精品videossex| 青青草视频在线视频观看| 亚洲内射少妇av| 国产精品一及| 国产真实伦视频高清在线观看| 天天躁夜夜躁狠狠久久av| 国产毛片a区久久久久| 青春草视频在线免费观看| 久久久久久久大尺度免费视频| 最近的中文字幕免费完整| 日本一二三区视频观看| 丝袜美腿在线中文| 男女视频在线观看网站免费| 亚洲av一区综合| 国产精品三级大全| 黑人高潮一二区| 精品一区二区免费观看| 国产伦精品一区二区三区视频9| 中国美白少妇内射xxxbb| 少妇人妻精品综合一区二区| 最近手机中文字幕大全| 搡老乐熟女国产| 最近最新中文字幕免费大全7| 日日啪夜夜撸| 欧美最新免费一区二区三区| 久久亚洲国产成人精品v| 日韩欧美一区视频在线观看 | 国内精品宾馆在线| 精品久久久久久久末码| 丰满乱子伦码专区| 国产av在哪里看| 免费av不卡在线播放| 尾随美女入室| 亚洲精华国产精华液的使用体验| 久久久久久久久中文| 秋霞伦理黄片| 观看免费一级毛片| 欧美极品一区二区三区四区| 成人亚洲精品av一区二区| 欧美日韩亚洲高清精品| 麻豆乱淫一区二区| 好男人在线观看高清免费视频| 99久国产av精品国产电影| 日本一二三区视频观看| 91精品伊人久久大香线蕉| 美女xxoo啪啪120秒动态图| 在线免费观看的www视频| 国产爱豆传媒在线观看| 欧美xxⅹ黑人| 插逼视频在线观看| 少妇高潮的动态图| 亚洲av二区三区四区| 岛国毛片在线播放| 欧美不卡视频在线免费观看| 天天一区二区日本电影三级| 久久久久久久久中文| 欧美成人午夜免费资源| 国产精品久久久久久久久免| 九九爱精品视频在线观看| 日本一本二区三区精品| 伊人久久国产一区二区| 又黄又爽又刺激的免费视频.| 亚洲精品乱码久久久v下载方式| 久久久久性生活片| 国产视频内射| 欧美高清性xxxxhd video| 极品少妇高潮喷水抽搐| 夜夜爽夜夜爽视频| 97超碰精品成人国产| 精品久久久久久成人av| 熟妇人妻不卡中文字幕| 国产乱人偷精品视频| 十八禁国产超污无遮挡网站| 亚洲国产精品国产精品| 极品少妇高潮喷水抽搐| 国产成人精品一,二区| 日韩欧美一区视频在线观看 | 亚洲人与动物交配视频| 欧美一区二区亚洲| 女人十人毛片免费观看3o分钟| 亚洲国产最新在线播放| 99久国产av精品国产电影| 午夜爱爱视频在线播放| 久久人人爽人人片av| 99久国产av精品| 九九爱精品视频在线观看| 老师上课跳d突然被开到最大视频| 成人欧美大片| 18+在线观看网站| 亚洲欧美成人精品一区二区| 中国美白少妇内射xxxbb| 天天一区二区日本电影三级| 久久久久久久久久人人人人人人| 国产成人精品久久久久久| 国内少妇人妻偷人精品xxx网站| 日日啪夜夜撸| 亚洲欧美成人综合另类久久久| 黄片wwwwww| av在线观看视频网站免费| 亚洲av成人精品一二三区| 高清日韩中文字幕在线| 久久久久久国产a免费观看| 亚洲精品色激情综合| 777米奇影视久久| 激情 狠狠 欧美| 免费观看性生交大片5| 最近中文字幕高清免费大全6| 久久久久九九精品影院| 成年人午夜在线观看视频 | 97热精品久久久久久| 成年人午夜在线观看视频 | 赤兔流量卡办理| .国产精品久久| 91午夜精品亚洲一区二区三区| 日产精品乱码卡一卡2卡三| 又大又黄又爽视频免费| 精品久久久久久电影网| 亚洲欧洲日产国产| 免费观看无遮挡的男女| 麻豆成人午夜福利视频| 青春草国产在线视频| 亚洲久久久久久中文字幕| 成年女人在线观看亚洲视频 | 免费人成在线观看视频色| 岛国毛片在线播放| 成人毛片60女人毛片免费| 91av网一区二区| 国产精品国产三级国产av玫瑰| 亚洲最大成人av| 国产精品久久久久久av不卡| 亚洲成人久久爱视频| 亚洲一区高清亚洲精品| 熟妇人妻不卡中文字幕| 国产激情偷乱视频一区二区| 免费大片黄手机在线观看| 亚洲欧美一区二区三区黑人 | 亚洲国产成人一精品久久久| 国产成人a区在线观看| 日韩国内少妇激情av| 两个人的视频大全免费| 亚洲欧美成人综合另类久久久| 精品一区在线观看国产| 丰满少妇做爰视频| 少妇熟女欧美另类| 九九爱精品视频在线观看| 国产激情偷乱视频一区二区| 欧美激情久久久久久爽电影| 男的添女的下面高潮视频| 日日撸夜夜添| 超碰av人人做人人爽久久| 免费观看的影片在线观看| 青春草国产在线视频| 国产在线一区二区三区精| 在线播放无遮挡| 你懂的网址亚洲精品在线观看| 美女大奶头视频| 亚洲国产欧美在线一区| 亚洲欧美日韩卡通动漫| 亚洲成人久久爱视频| 国产亚洲av片在线观看秒播厂 | 亚洲激情五月婷婷啪啪| av免费在线看不卡| 日韩成人av中文字幕在线观看| 国产淫片久久久久久久久| 丝瓜视频免费看黄片| 久久久久免费精品人妻一区二区| 人体艺术视频欧美日本| 日韩精品有码人妻一区| 亚洲人成网站在线播| videos熟女内射| 精品酒店卫生间| 精品人妻视频免费看| 色综合站精品国产| 天天躁日日操中文字幕| 人妻系列 视频| 亚洲av中文字字幕乱码综合| 精品国产一区二区三区久久久樱花 | .国产精品久久| 自拍偷自拍亚洲精品老妇| 亚洲内射少妇av| 成人无遮挡网站| 如何舔出高潮| 亚洲精华国产精华液的使用体验| 波野结衣二区三区在线| 日本色播在线视频| 免费看美女性在线毛片视频| 老司机影院成人| 国产大屁股一区二区在线视频| 国产成人精品福利久久| 神马国产精品三级电影在线观看| 久久99热这里只有精品18| 嫩草影院新地址| 亚洲欧美中文字幕日韩二区| 精品亚洲乱码少妇综合久久| 中文资源天堂在线| 亚洲第一区二区三区不卡| 99久久精品热视频| 久久精品久久精品一区二区三区| 狂野欧美白嫩少妇大欣赏| 国产成人精品一,二区| 亚洲色图av天堂| 男人舔女人下体高潮全视频| 久久久精品欧美日韩精品| 国内精品宾馆在线| 精品久久久久久久久久久久久| 国产成人一区二区在线| 亚洲精品视频女| 国产精品人妻久久久影院| 欧美成人a在线观看| 国产v大片淫在线免费观看| av在线亚洲专区| 熟女电影av网| 九九久久精品国产亚洲av麻豆| 国产精品精品国产色婷婷| 成人性生交大片免费视频hd| 国产在线一区二区三区精| 欧美不卡视频在线免费观看| 只有这里有精品99| 美女xxoo啪啪120秒动态图| 国产精品久久久久久精品电影小说 | 国产精品麻豆人妻色哟哟久久 | 最近中文字幕高清免费大全6| 久久精品国产亚洲网站| 可以在线观看毛片的网站| 全区人妻精品视频| 菩萨蛮人人尽说江南好唐韦庄| 国产黄片视频在线免费观看| 婷婷色av中文字幕| 国产又色又爽无遮挡免| 亚洲精品久久久久久婷婷小说| 床上黄色一级片| 国产精品熟女久久久久浪| 观看免费一级毛片| 老司机影院毛片| 国产极品天堂在线| 久久久久久久午夜电影| 国产黄色视频一区二区在线观看| 国产伦理片在线播放av一区| 精品久久久久久久久亚洲| 美女内射精品一级片tv| 国产成人a区在线观看| 欧美激情久久久久久爽电影| 国产不卡一卡二| 欧美性感艳星| 一级黄片播放器| 天堂av国产一区二区熟女人妻| 久久久久久九九精品二区国产| 亚洲内射少妇av| 成人性生交大片免费视频hd| 亚洲av成人精品一区久久| 亚洲国产高清在线一区二区三| 国产精品av视频在线免费观看| 丝袜美腿在线中文| 伊人久久国产一区二区| 网址你懂的国产日韩在线| 最新中文字幕久久久久| 亚洲欧美日韩卡通动漫| 狠狠精品人妻久久久久久综合| 黄色一级大片看看| 日本与韩国留学比较| 国产精品女同一区二区软件| 建设人人有责人人尽责人人享有的 | 国产单亲对白刺激| 赤兔流量卡办理| 日本与韩国留学比较| 欧美zozozo另类| 高清在线视频一区二区三区| 色综合色国产| 在线观看一区二区三区| 在线观看免费高清a一片| 欧美成人午夜免费资源| 插逼视频在线观看| 99久久中文字幕三级久久日本| 午夜福利视频1000在线观看| 国产 一区 欧美 日韩| 午夜福利在线观看免费完整高清在| 亚洲精品乱久久久久久| 精品欧美国产一区二区三| 亚洲在线自拍视频| 黄色日韩在线| 热99在线观看视频| 18禁在线无遮挡免费观看视频| 99久久人妻综合| 亚洲电影在线观看av| 亚洲av福利一区| 乱系列少妇在线播放| 亚洲人成网站在线观看播放| 蜜臀久久99精品久久宅男| 一区二区三区高清视频在线| 美女主播在线视频| 亚洲国产精品成人综合色| 久久久久久久大尺度免费视频| 免费看光身美女| eeuss影院久久| 插阴视频在线观看视频| 老女人水多毛片| 亚洲欧美一区二区三区黑人 | 欧美激情国产日韩精品一区| 日韩精品有码人妻一区| 一区二区三区乱码不卡18| 亚洲三级黄色毛片| 国产乱人视频| 亚洲av一区综合| 极品少妇高潮喷水抽搐| 成年女人看的毛片在线观看| 国国产精品蜜臀av免费| 午夜激情福利司机影院| 内射极品少妇av片p| 国产成人免费观看mmmm| 97精品久久久久久久久久精品| 搞女人的毛片| 日日撸夜夜添| 国产精品国产三级国产专区5o| 国产精品1区2区在线观看.| 2018国产大陆天天弄谢| 色视频www国产| 波野结衣二区三区在线| 亚洲av福利一区| 成人鲁丝片一二三区免费| 亚洲经典国产精华液单| 天堂√8在线中文| 男人狂女人下面高潮的视频| 亚洲成色77777| 日韩av免费高清视频| 亚洲精品中文字幕在线视频 | 免费少妇av软件| 亚洲av中文av极速乱| 美女内射精品一级片tv| 成年女人在线观看亚洲视频 | 蜜臀久久99精品久久宅男| 天天躁日日操中文字幕| 免费黄频网站在线观看国产| 亚洲精品自拍成人| 一个人观看的视频www高清免费观看| 乱码一卡2卡4卡精品| 1000部很黄的大片| 嫩草影院新地址| 免费黄频网站在线观看国产| 国产免费一级a男人的天堂| 亚洲av男天堂| 91久久精品国产一区二区三区| 97超视频在线观看视频| 九九久久精品国产亚洲av麻豆| 日本午夜av视频| 国产黄频视频在线观看| 午夜福利在线在线| 亚州av有码| 久久午夜福利片| av在线老鸭窝| 亚洲欧美日韩无卡精品| videossex国产| 小蜜桃在线观看免费完整版高清| 亚洲精品成人久久久久久| 在线免费十八禁| 女人久久www免费人成看片| 夫妻午夜视频| 中文字幕制服av| 国内精品美女久久久久久| 啦啦啦中文免费视频观看日本| 亚洲在线自拍视频| 国产一区二区三区av在线| 婷婷色综合www| 国产精品99久久久久久久久| 国产一区亚洲一区在线观看| 男人狂女人下面高潮的视频| 大陆偷拍与自拍| 青春草亚洲视频在线观看| 午夜久久久久精精品| 自拍偷自拍亚洲精品老妇| 一本久久精品| 国产成人一区二区在线| 一本—道久久a久久精品蜜桃钙片 精品乱码久久久久久99久播 | 国产 一区精品| 亚洲aⅴ乱码一区二区在线播放| 国产成人a区在线观看| 久久精品久久久久久噜噜老黄| 亚洲欧美一区二区三区国产| av天堂中文字幕网| 免费看美女性在线毛片视频| 精品一区二区三卡| 免费播放大片免费观看视频在线观看| 能在线免费看毛片的网站| 成人二区视频| 精品国产露脸久久av麻豆 | 久久草成人影院| 天天躁夜夜躁狠狠久久av| 最近手机中文字幕大全| 久久久久免费精品人妻一区二区| 国产欧美另类精品又又久久亚洲欧美| 干丝袜人妻中文字幕| 亚洲av日韩在线播放| 91在线精品国自产拍蜜月| 国产免费又黄又爽又色| 亚洲成人精品中文字幕电影| 日韩亚洲欧美综合| 一个人看的www免费观看视频| 成人特级av手机在线观看| 免费黄频网站在线观看国产| 日韩av在线免费看完整版不卡| 大片免费播放器 马上看| 91狼人影院| 亚洲av成人av| 内地一区二区视频在线| 亚洲av中文av极速乱| 禁无遮挡网站| 岛国毛片在线播放| 99九九线精品视频在线观看视频| 国产一区有黄有色的免费视频 | 午夜免费观看性视频| 国产黄频视频在线观看| 国产精品嫩草影院av在线观看| 成年版毛片免费区| 免费看美女性在线毛片视频| 国产淫语在线视频| 日韩精品有码人妻一区| 99热这里只有是精品在线观看| 99视频精品全部免费 在线| 一个人免费在线观看电影| 日韩欧美一区视频在线观看 | 天堂√8在线中文| 亚洲美女搞黄在线观看| 亚洲精品,欧美精品| 国产精品美女特级片免费视频播放器| 午夜视频国产福利| 婷婷色麻豆天堂久久| 在线 av 中文字幕| 成人一区二区视频在线观看| 国产av在哪里看| 在线免费十八禁| 99视频精品全部免费 在线| 丝袜美腿在线中文| 99re6热这里在线精品视频| 少妇的逼好多水| 久久久久久久久久久丰满| 欧美bdsm另类| 国产精品美女特级片免费视频播放器| h日本视频在线播放| 国产精品爽爽va在线观看网站| 国产色婷婷99| 七月丁香在线播放| 99久国产av精品| 亚洲精品,欧美精品| 水蜜桃什么品种好| 寂寞人妻少妇视频99o| 国产精品久久视频播放| 免费大片黄手机在线观看| 一级二级三级毛片免费看| a级一级毛片免费在线观看| 亚洲av.av天堂| 99久国产av精品| 汤姆久久久久久久影院中文字幕 | 午夜精品国产一区二区电影 | 网址你懂的国产日韩在线| or卡值多少钱| a级一级毛片免费在线观看| 99久久中文字幕三级久久日本| 直男gayav资源| 亚洲自拍偷在线| 久久99热6这里只有精品| 成人毛片a级毛片在线播放| 一区二区三区免费毛片| 天天一区二区日本电影三级| 中国国产av一级| 免费观看精品视频网站| 最近最新中文字幕免费大全7| 内地一区二区视频在线| 日本午夜av视频| 又爽又黄无遮挡网站| 国产爱豆传媒在线观看| 在现免费观看毛片| 国产精品久久久久久久电影| 亚洲综合精品二区| 亚洲成色77777| 一个人观看的视频www高清免费观看| 亚洲在久久综合| 九色成人免费人妻av| 午夜久久久久精精品| 国产伦精品一区二区三区视频9| 极品教师在线视频| 日本午夜av视频| 蜜桃亚洲精品一区二区三区| 日韩av在线免费看完整版不卡| 五月天丁香电影| 欧美三级亚洲精品| 久久午夜福利片| 国产黄片美女视频| 好男人视频免费观看在线| 夫妻性生交免费视频一级片| 欧美zozozo另类| 国产伦在线观看视频一区| 激情 狠狠 欧美| 国产免费又黄又爽又色| 一本—道久久a久久精品蜜桃钙片 精品乱码久久久久久99久播 | 成人漫画全彩无遮挡| 看黄色毛片网站| 国产亚洲最大av| 国产伦精品一区二区三区四那| 亚洲欧洲日产国产| 国产激情偷乱视频一区二区| 一边亲一边摸免费视频| av专区在线播放| 久久久精品94久久精品| 国产在线男女| 国国产精品蜜臀av免费| 日韩电影二区| 2018国产大陆天天弄谢| 日韩一区二区视频免费看| 有码 亚洲区| a级一级毛片免费在线观看| 淫秽高清视频在线观看| 免费av观看视频| 欧美日韩视频高清一区二区三区二| 麻豆成人av视频| 日本爱情动作片www.在线观看| 免费大片黄手机在线观看| 91在线精品国自产拍蜜月| 日韩国内少妇激情av| 一二三四中文在线观看免费高清| 亚洲成色77777| 亚洲精品国产av成人精品| 永久网站在线| 在线免费十八禁| 22中文网久久字幕| 99热全是精品| 国产黄频视频在线观看| 女人被狂操c到高潮| 免费观看a级毛片全部| 成年av动漫网址| 搡女人真爽免费视频火全软件| 99热这里只有精品一区| 最近最新中文字幕免费大全7| 亚洲三级黄色毛片| or卡值多少钱| 熟妇人妻久久中文字幕3abv| 69人妻影院| 网址你懂的国产日韩在线| 能在线免费看毛片的网站| 国产精品一区二区性色av| 非洲黑人性xxxx精品又粗又长| 少妇人妻一区二区三区视频| 狠狠精品人妻久久久久久综合| 亚洲国产精品专区欧美| 中文字幕久久专区| 狂野欧美激情性xxxx在线观看| 色5月婷婷丁香| 国产高清有码在线观看视频| 国产精品一区二区在线观看99 | 亚洲图色成人| 国产精品人妻久久久影院| 国产在线男女| 嫩草影院新地址| 欧美最新免费一区二区三区|