(華北電力大學控制與計算機工程學院 北京 102206)
Web服務是和一個平臺無關的,低耦合的,可編程的web應用程序,可以通過可擴展標記語言的標準來描述、發(fā)布和發(fā)現(xiàn)。其經(jīng)常被用來開發(fā)分布式的應用程序。Web服務技術可以使得在不同環(huán)境下的應用無須借助第三方軟件和硬件,就能相互集成并執(zhí)行具體的業(yè)務功能。目前,web服務技術在Internet上發(fā)揮著巨大的作用。Web服務被提出時預想其對于web上的應用的性能應該有一個重大的提升。但是,目前的提升還是沒有達到預期。一方面,web上服務的數(shù)量比期望的要少很多。另一方面,大量的關于web服務的研究集中在基于關鍵字或者基于語義的發(fā)現(xiàn)來提升服務匹配的數(shù)量和質量。此外,通過最近的文獻可知,大多數(shù)發(fā)布在web上的服務沒有被使用,只有一小部分被發(fā)現(xiàn),組合,調用。本文提出一個方法將孤立的服務連接起來形成一個服務網(wǎng)絡,來支持服務的社交活動。
構建服務網(wǎng)絡時我們用到服務的功能屬性,服務的社交屬性。服務的功能屬性是一系列描述服務任務的屬性,包括服務名和輸入輸出。Web服務,語義web服務和web APIs都是服務的模型,但其僅僅考慮了服務的功能屬性和QoS而沒有考慮服務的社交活動。語義web服務給以前的服務發(fā)現(xiàn)方法帶來了很大的革新,但是現(xiàn)有的服務之間并沒有社交關系。在本文中,我們提出一個方法來將單獨的服務連接成為服務網(wǎng)絡。使用連接的質量來描述服務的社交關系并以此來支持服務的社交活動。
一個web服務的網(wǎng)絡是一個能夠反映服務社交活動的服務網(wǎng)絡。它的結構是一個有向圖G=
服務網(wǎng)絡通過社交鏈路將服務連接成為網(wǎng)絡。一方面,加強了服務的社交性,更加有利于服務的發(fā)現(xiàn)和組合。另一方面,服務網(wǎng)絡將服務的社交屬性形容為社交關系和社交狀態(tài),能夠反應真實的社交情況來加強用戶分享,組合和推薦的意愿來提高服務發(fā)現(xiàn)的質量。
給出服務si和服務sj,參數(shù)相關性
表示了si的輸入和sj的輸出重合的可能性,即si和sj之間有鏈路的可能性。
傳統(tǒng)的服務發(fā)現(xiàn)方法,比如基于關鍵字的,基于語義的,服務都缺少和服務調用者的聯(lián)系。服務調用者不能參與到服務發(fā)現(xiàn)的過程中。此外,服務被發(fā)布為孤立的服務,所以服務與服務之間也沒有聯(lián)系。這使得目前的服務發(fā)現(xiàn)方法不能引導用戶從一個服務發(fā)現(xiàn)另一個可能和其組合的服務。考慮一個應用場景,一個病人感覺到不舒服。他首先得知道他得了什么病,然后得知道哪一家醫(yī)院可以治療這個病。他還得知道醫(yī)院附近酒店和飯店的信息,因為他得在醫(yī)院治療一段時間。最后,他還得知道從醫(yī)院去酒店和飯店的路線。沒有單個的服務可以滿足這個情景里的所有需要。為了滿足這些需求,多個服務需要被發(fā)現(xiàn)并組合。可以滿足上述需要的服務集合如下,首先,他需要“診斷服務”來根據(jù)他的癥狀給出診斷。然后,需要“獲得醫(yī)院信息服務”來得到能夠治療他健康問題的醫(yī)院的信息,需要“獲取位置信息服務”得到更多的地址信息。之后,需要“獲取酒店信息服務”與“獲取飯店信息服務”來獲取酒店與飯店的信息。最后,根據(jù)得到的地址,需要“導航服務”來獲得路線圖。為了發(fā)現(xiàn)可以滿足復雜請求的服務,我們提出一個新的服務發(fā)現(xiàn)方法。
就像我們使用鏈接數(shù)據(jù)來重用數(shù)據(jù),從相關的數(shù)據(jù)集發(fā)現(xiàn)數(shù)據(jù)或者從大量的數(shù)據(jù)資源中集成數(shù)據(jù)一樣,鏈路可以用來做服務發(fā)現(xiàn)。本文的服務發(fā)現(xiàn)方法,允許用戶從一個服務出發(fā)沿著鏈路找到其他相關的服務,這樣用戶就可以更加深入的探索網(wǎng)絡。本方法允許用戶根據(jù)自己的需要沿著鏈路發(fā)現(xiàn)相關的服務,就像在互聯(lián)網(wǎng)上瀏覽web頁面一樣。服務網(wǎng)絡上的社交鏈路可以被定義為
SL={L1,L2,…,Ln},1≤n≤N
其中SL為鏈路的集合。所以,可以跟隨鏈路N次來探索整個服務網(wǎng)絡的服務。服務的數(shù)量被定義為:
s=∑(Sj(charAtrib)∪Sj(numAtrib))W(attribj)
結果表明所提出的基于服務網(wǎng)絡的web服務發(fā)現(xiàn)方法的效果優(yōu)于基于語義的發(fā)現(xiàn)方法和基于語法的發(fā)現(xiàn)方法。
綜上所述,本文通過將孤立的服務連接成為一個服務網(wǎng)絡來加強服務的聯(lián)系。提出一個新的模型來構建web服務的服務網(wǎng)絡,利用服務之間的參數(shù)相關性來構建服務的服務網(wǎng)絡。然后,提出一個在服務的網(wǎng)絡上進行查找的方法。最后,對于提出的方法進行了對比實驗,證實了所提出的基于服務網(wǎng)絡的web服務發(fā)現(xiàn)方法的效果優(yōu)于傳統(tǒng)的web服務發(fā)現(xiàn)方法,充分證明了該方案的可行性和有效性。