專利名稱:用于網(wǎng)絡(luò)資源聚合的方法和設(shè)備的制作方法
用于網(wǎng)絡(luò)資源聚合的方法和設(shè)備技術(shù)領(lǐng)域
本發(fā)明一般地涉及計算機(jī)網(wǎng)絡(luò)技術(shù),更具體而言,涉及網(wǎng)絡(luò)資源描述和聚合 (mashup)。
背景技術(shù):
隨著因特網(wǎng)的快速發(fā)展,涌現(xiàn)了非常多的網(wǎng)絡(luò)資源(例如,網(wǎng)絡(luò)服務(wù)或網(wǎng)絡(luò)應(yīng) 用)。所以急需一種好的描述方法去描述這些資源。并且,由于資源聚合已經(jīng)成為云計 算中很重要的部分(它使得人們能夠以更簡便的方式使用集成的多種服務(wù)),所以網(wǎng)絡(luò)資 源的描述方法不僅應(yīng)該清楚的描述出資源的屬性以供用戶/開發(fā)者使用,還應(yīng)該使得這 些描述后的資源可以與其他網(wǎng)絡(luò)資源高效的聚合。
現(xiàn)有技術(shù)中存在很多網(wǎng)絡(luò)資源描述方法,其中被應(yīng)用最廣的是WSDL (網(wǎng)絡(luò)資源 描述語言)。但是這些描述方法沒有考慮到云計算中重要的資源組合/重復(fù)利用的問題, 所以不能使網(wǎng)絡(luò)資源被高效的循環(huán)利用/聚合。也就是說,它們不能減少利用已有網(wǎng)絡(luò) 資源生成新的網(wǎng)絡(luò)資源所需的開發(fā)時間,從而阻礙了網(wǎng)絡(luò)資源的發(fā)展和影響力。
WSDL是W3C發(fā)布的網(wǎng)絡(luò)服務(wù)描述語言標(biāo)準(zhǔn),參見http://www.w3.org/TR/ wsdL 圖1示出了用WSDL描述一個網(wǎng)絡(luò)服務(wù)的原理示意圖。如圖1所示,WSDL的 主要組成部分包括網(wǎng)絡(luò)資源的輸入/輸出參數(shù)信息101、基本信息102、以及如何調(diào)用 該網(wǎng)絡(luò)服務(wù)的應(yīng)用程序接口(API)接口信息103。然而,WSDL的使用存在很多缺陷, 例如在對多個用WSDL描述的網(wǎng)絡(luò)資源進(jìn)行聚合時,開發(fā)者需要書寫的代碼量非常大。 為了便于說明,圖2和3中分別給出兩個示例。
示例1 (參見圖幻網(wǎng)絡(luò)服務(wù)A和網(wǎng)絡(luò)服務(wù)B被聚合成網(wǎng)絡(luò)應(yīng)用X的情形。此 時網(wǎng)絡(luò)服務(wù)A和網(wǎng)絡(luò)服務(wù)B分別利用圖1所示的WSDL語言進(jìn)行描述(即封裝)。參考 圖2可以看出,在此情況下,網(wǎng)絡(luò)應(yīng)用X的開發(fā)者必須為這個新的網(wǎng)絡(luò)應(yīng)用寫很多代碼, 包括
(1)調(diào)用網(wǎng)絡(luò)服務(wù)A的API的代碼Q013)
(2)調(diào)用網(wǎng)絡(luò)服務(wù)B的API的代碼Q014)
(3)網(wǎng)絡(luò)服務(wù)A和B之間的邏輯調(diào)用關(guān)系的代碼O012)
(4)網(wǎng)絡(luò)應(yīng)用X界面的代碼Q011)
示例2 (參見圖幻在示例1完成之后,網(wǎng)絡(luò)應(yīng)用X和網(wǎng)絡(luò)服務(wù)C被聚合成新 的網(wǎng)絡(luò)應(yīng)用Y的情形。此時網(wǎng)絡(luò)服務(wù)C也是利用圖1所示的WSDL語言進(jìn)行描述(即封 裝)的。參考圖3可以看出,在此情況下,網(wǎng)絡(luò)應(yīng)用Y的開發(fā)者必須寫代碼從網(wǎng)絡(luò)應(yīng)用 X中抽取API(因為網(wǎng)絡(luò)應(yīng)用只有界面,沒有供開發(fā)者調(diào)用的API),而且還要負(fù)責(zé)寫網(wǎng)絡(luò) 應(yīng)用Y的相關(guān)代碼,包括
(1)從網(wǎng)絡(luò)應(yīng)用X中抽取API的代碼(3015)
(2)調(diào)用網(wǎng)絡(luò)應(yīng)用X的API的代碼(3014)
(3)調(diào)用網(wǎng)絡(luò)服務(wù)C的代碼(3013)
(4)網(wǎng)絡(luò)應(yīng)用X和網(wǎng)絡(luò)服務(wù)C之間的邏輯調(diào)用關(guān)系的代碼(3012)
(5)網(wǎng)絡(luò)應(yīng)用Y界面的代碼(3011)。
通過上面的示例1和2可以看出,使用WSDL描述的網(wǎng)絡(luò)資源不能直接被重用, 也無法通過迭代被自動聚合。網(wǎng)絡(luò)應(yīng)用開發(fā)者為了實現(xiàn)網(wǎng)絡(luò)資源的聚合必須寫很多額外 的代碼,因此使得聚合效率低下。發(fā)明內(nèi)容
為了解決上述問題,本發(fā)明提出一種全新的網(wǎng)絡(luò)資源描述方法可組合服務(wù)架 構(gòu)(Assembly Service Architecture),簡稱ASA。這種方法在描述文件中加入了輸入界面描述信息和按照一定邏輯順序調(diào)用多個網(wǎng)絡(luò)資源的API信息,從而可以實現(xiàn)更加高效的 網(wǎng)絡(luò)資源聚合。
通過ASA封裝后的網(wǎng)絡(luò)資源被稱為“資源封裝體(Magicell) ”。Magicell不僅是一個網(wǎng)絡(luò)服務(wù)(因為有API信息),而且是一個網(wǎng)絡(luò)應(yīng)用(因為有界面信息)。換句話 說,它已經(jīng)包含了聚合所需的所有必要信息。
根據(jù)本發(fā)明第一方面,提供了一種利用Magicell進(jìn)行網(wǎng)絡(luò)資源聚合的方法,包 括輸入多個網(wǎng)絡(luò)資源;對多個網(wǎng)絡(luò)資源中的每一個進(jìn)行封裝,以生成多個資源封裝 體(Magicell),其中每個網(wǎng)絡(luò)資源的Magicell具有相同的格式,包含特定于相應(yīng)網(wǎng)絡(luò)資 源的應(yīng)用程序接口(API)信息和界面信息;以及根據(jù)多個網(wǎng)絡(luò)資源之間的邏輯關(guān)系對多 個Magicell進(jìn)行自動聚合,以得到對應(yīng)于聚合后的網(wǎng)絡(luò)資源的聚合Magicell,所述聚合 Magicell的格式相對于聚合前的每個網(wǎng)絡(luò)資源的Magicell格式保持不變,并且包含特定于 聚合后的網(wǎng)絡(luò)資源的API信息和界面信息。
根據(jù)本發(fā)明第一方面,提供了一種利用Magicell進(jìn)行網(wǎng)絡(luò)資源聚合的設(shè)備,包 括輸入裝置,用于輸入多個網(wǎng)絡(luò)資源;封裝裝置,用于對多個網(wǎng)絡(luò)資源中的每一個進(jìn) 行封裝,以生成多個資源封裝體(Magicell),其中每個網(wǎng)絡(luò)資源的Magicell具有相同的格 式,包含特定于相應(yīng)網(wǎng)絡(luò)資源的應(yīng)用程序接口(API)信息和界面信息;以及聚合裝置, 用于根據(jù)多個網(wǎng)絡(luò)資源之間的邏輯關(guān)系對多個Magicell進(jìn)行自動聚合,以得到對應(yīng)于聚 合后的網(wǎng)絡(luò)資源的聚合Magicell,所述聚合Magicell的格式相對于聚合前的每個網(wǎng)絡(luò)資源 的Magicell格式保持不變,并且包含特定于聚合后的網(wǎng)絡(luò)資源的API信息和界面信息。
因此,在使用Magicell進(jìn)行網(wǎng)絡(luò)資源聚合時,Magicell可以被直接重用,開發(fā)者 只要設(shè)計Magicell之間的邏輯關(guān)系即可,之后無需寫其他額外代碼。
另外,由于兩個或更多個Magicell被聚合之后還是一個新的Magicell,因此 Magicell可以被自動地迭代聚合。
結(jié)合附圖,從下面對本發(fā)明實施例的詳細(xì)描述,將更好地理解本發(fā)明,附圖中 類似的參考標(biāo)注指示類似的部分,其中
圖1示出了根據(jù)現(xiàn)有技術(shù)用WSDL描述一個網(wǎng)絡(luò)服務(wù)的原理示意圖2是在使用WSDL對網(wǎng)絡(luò)服務(wù)進(jìn)行描述的情況下,用于將兩個服務(wù)A和B聚 合成應(yīng)用X的示例200的示意圖3是在使用WSDL對網(wǎng)絡(luò)服務(wù)進(jìn)行描述的情況下,在服務(wù)A和B已經(jīng)被聚合 成應(yīng)用X之后,用于將應(yīng)用X和另一服務(wù)C聚合成應(yīng)用Y的示例300的示意圖;圖4是根據(jù)本發(fā)明實施例用ASA描述一個網(wǎng)絡(luò)服務(wù)所生成的magicell的示意 圖;圖5是根據(jù)本發(fā)明實施例的用于聚合多個網(wǎng)絡(luò)服務(wù)的系統(tǒng)500A的結(jié)構(gòu)框圖;圖6是圖5所示系統(tǒng)500A的替代系統(tǒng)500B的結(jié)構(gòu)框圖;圖7是示出圖5或圖6所示系統(tǒng)500A或500B的操作過程700的流程圖;以及圖8是用于說明利用Magicell進(jìn)行自動迭代聚合的原理的示意圖。
具體實施方式
如前所述,本發(fā)明所提出的ASA將網(wǎng)絡(luò)資源封裝成magicell的形式。圖4是根 據(jù)本發(fā)明實施例用ASA描述(封裝)一個網(wǎng)絡(luò)服務(wù)所生成的magicell的原理示意圖。如圖4所示,Magicell的主要組成部分包括網(wǎng)絡(luò)服務(wù)的基本信息401、輸入/ 輸出參數(shù)信息402、如何按照一定邏輯順序調(diào)用多個網(wǎng)絡(luò)服務(wù)的API接口信息403,以及 輸入界面描述信息404。使用ASA描述的網(wǎng)絡(luò)資源和使用WSDL描述的網(wǎng)絡(luò)資源的主要組成部分的對比 表如以下表1所示
權(quán)利要求
1.一種用于網(wǎng)絡(luò)資源聚合的方法,包括 輸入多個網(wǎng)絡(luò)資源;對所述多個網(wǎng)絡(luò)資源中的每一個進(jìn)行封裝,以生成多個資源封裝體,其中每個網(wǎng)絡(luò) 資源的資源封裝體具有相同的格式,并且包含特定于相應(yīng)網(wǎng)絡(luò)資源的應(yīng)用程序接口(API) 信息和界面信息;以及根據(jù)所述多個網(wǎng)絡(luò)資源之間的邏輯關(guān)系對所述多個資源封裝體進(jìn)行自動聚合,以得 到對應(yīng)于聚合網(wǎng)絡(luò)資源的聚合資源封裝體,所述聚合資源封裝體的格式相對于每個所述 資源封裝體的格式保持不變,并且包含特定于所述聚合網(wǎng)絡(luò)資源的API信息和界面信 肩、ο
2.如權(quán)利要求1所述的方法,還包括 輸入另一網(wǎng)絡(luò)資源;對所述另一網(wǎng)絡(luò)資源進(jìn)行封裝,以生成相應(yīng)的資源封裝體,其包含特定于該另一網(wǎng) 絡(luò)資源的API信息和界面信息;以及根據(jù)所述另一網(wǎng)絡(luò)資源與所述聚合網(wǎng)絡(luò)資源的邏輯關(guān)系對新生成的資源封裝體與所 述聚合資源封裝體進(jìn)行自動聚合,以得到新的聚合資源封裝體,該新的聚合資源封裝體 的格式仍然保持不變。
3.如權(quán)利要求1所述的方法,其中每個所述資源封裝體還包括 特定于相應(yīng)網(wǎng)絡(luò)資源的基本信息;以及特定于相應(yīng)網(wǎng)絡(luò)資源的輸入輸出參數(shù)信息。
4.如權(quán)利要求1所述的方法,其中所述網(wǎng)絡(luò)資源是網(wǎng)絡(luò)服務(wù)或網(wǎng)絡(luò)應(yīng)用。
5.如權(quán)利要求1所述的方法,其中所述多個網(wǎng)絡(luò)資源之間的邏輯關(guān)系通過可視化拖拽 工具自動生成。
6.如權(quán)利要求1所述的方法,還包括通過操作所述聚合資源封裝體來對所述聚合網(wǎng)絡(luò)資源進(jìn)行后處理。
7.如權(quán)利要求6所述的方法,其中所述后處理是對所述聚合網(wǎng)絡(luò)資源進(jìn)行界面修改。
8.—種用于網(wǎng)絡(luò)資源聚合的設(shè)備,包括 輸入裝置,用于輸入多個網(wǎng)絡(luò)資源;封裝裝置,用于對所述多個網(wǎng)絡(luò)資源中的每一個進(jìn)行封裝,以生成多個資源封裝 體,其中每個網(wǎng)絡(luò)資源的資源封裝體具有相同的格式,并且包含特定于相應(yīng)網(wǎng)絡(luò)資源的 應(yīng)用程序接口(API)信息和界面信息;以及聚合裝置,用于根據(jù)所述多個網(wǎng)絡(luò)資源之間的邏輯關(guān)系對所述多個資源封裝體進(jìn)行 自動聚合,以得到對應(yīng)于聚合網(wǎng)絡(luò)資源的聚合資源封裝體,所述聚合資源封裝體的格式 相對于每個所述資源封裝體的格式保持不變,并且包含特定于所述聚合網(wǎng)絡(luò)資源的API 信息和界面信息。
9.如權(quán)利要求8所述的設(shè)備,還包括邏輯關(guān)系生成裝置,用于利用可視化拖拽工具自動生成所述網(wǎng)絡(luò)資源之間的邏輯關(guān)系。
10.如權(quán)利要求8所述的設(shè)備,還包括后處理裝置,用于通過操作所述聚合資源封裝體來對所述聚合網(wǎng)絡(luò)資源進(jìn)行后處理。
11.如權(quán)利要求8所述的設(shè)備,其中所述聚合裝置包括API信息轉(zhuǎn)換器,用于將各個資源封裝體的API信息轉(zhuǎn)換成聚合后的資源封裝體的 API信息;以及界面信息轉(zhuǎn)換器,用于將各個資源封裝體的界面信息轉(zhuǎn)換成聚合后的資源封裝體的 界面信息。
12.如權(quán)利要求11所述的設(shè)備,其中每個所述資源封裝體還包括 特定于相應(yīng)網(wǎng)絡(luò)資源的基本信息;以及特定于相應(yīng)網(wǎng)絡(luò)資源的輸入輸出參數(shù)信息, 其中所述聚合裝置還包括基本信息轉(zhuǎn)換器,用于將各個資源封裝體的基本信息轉(zhuǎn)換成聚合后的資源封裝體的 基本信息;以及輸入輸出參數(shù)信息轉(zhuǎn)換器,用于將各個資源封裝體的輸入輸出參數(shù)信息轉(zhuǎn)換成聚合 后的資源封裝體的輸入輸出參數(shù)信息。
全文摘要
本發(fā)明提供了用于網(wǎng)絡(luò)資源聚合的方法和設(shè)備。根據(jù)本發(fā)明的用于網(wǎng)絡(luò)資源聚合的方法包括輸入多個網(wǎng)絡(luò)資源;對多個網(wǎng)絡(luò)資源中的每一個進(jìn)行封裝,以生成多個資源封裝體(Magicell),其中每個網(wǎng)絡(luò)資源的資源封裝體具有相同的格式,并且包含特定于相應(yīng)網(wǎng)絡(luò)資源的應(yīng)用程序接口(API)信息和界面信息;以及根據(jù)多個網(wǎng)絡(luò)資源之間的邏輯關(guān)系對多個Magicell進(jìn)行自動聚合,以得到對應(yīng)于聚合網(wǎng)絡(luò)資源的聚合Magicell,聚合后的網(wǎng)絡(luò)資源的Magicell的格式相對于每個網(wǎng)絡(luò)資源的Magicell格式保持不變,并且包含特定于聚合網(wǎng)絡(luò)資源的API信息和界面信息。根據(jù)本發(fā)明,在進(jìn)行資源聚合時,開發(fā)者只需要獲知服務(wù)之間的邏輯關(guān)系即可,因此所需編寫的代碼量大大減少。
文檔編號H04L29/08GK102025755SQ200910171948
公開日2011年4月20日 申請日期2009年9月22日 優(yōu)先權(quán)日2009年9月22日
發(fā)明者劉慧峰, 劉曉煒, 史敬威, 孟昕 申請人:日電(中國)有限公司