小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Web服務(wù)搜索與執(zhí)行引擎(一)——項目提出的有關(guān)背景 - gaolinb‘s blog -...

 ShangShujie 2007-04-17

  在接下來的blog里,我將會寫一系列項目總結(jié)的文章,里面很多內(nèi)容是我們Cactus團(tuán)隊成員一起完成的,最主要的目的是把我們的想法說出來,跟大家探討,歡迎大家提出寶貴意見。     

1.1 Web服務(wù)出現(xiàn)的意義
Web 服務(wù)是一種想把全世界的Internet/Intranet變成一個虛擬計算環(huán)境的 觀念和技術(shù)。在由Web Service組成的虛擬環(huán)境中使用者可以任何的客戶端軟件,例如瀏覽器,一般的Window或是Java應(yīng)用程序或是手機(jī)等,來調(diào)用Web服務(wù)提供的服務(wù)。而Web服務(wù)本身則可以由任何的技術(shù)來編寫,例如開發(fā)者可以使用Delphi,Java,C/C++或是C#等語言和工具來開發(fā)。因為Web服務(wù)視作Web上的組件編程,從理論上講,開發(fā)人員可通過調(diào)用Web應(yīng)用編程接口(API)(就像調(diào)用本地服務(wù)一樣),將Web服務(wù)集成到應(yīng)用程序中,不同的是Web API調(diào)用可通過互聯(lián)網(wǎng)發(fā)送給位于遠(yuǎn)程系統(tǒng)中的某一服務(wù)。
1.2發(fā)現(xiàn)和利用現(xiàn)有Web服務(wù)是個問題  
但是,目前來說,在如何發(fā)現(xiàn)和充分利用現(xiàn)有Web服務(wù)上仍然是個問題。當(dāng)前的搜索引擎只能支持搜索Web 頁面,它們只是搜索到網(wǎng)站的鏈接,用戶執(zhí)行某個操作需要點擊鏈接進(jìn)入后,面對很多五花八門的無用的頁面信息,然后經(jīng)過了復(fù)雜的查找,操作后才能找到您真正想要的某種服務(wù)的正確位置來執(zhí)行。這種方式并不能發(fā)現(xiàn)網(wǎng)絡(luò)上大量可用的Web服務(wù),所以為了發(fā)現(xiàn)和利用互聯(lián)網(wǎng)上存在的大量優(yōu)秀的Web服務(wù),需要一個Web服務(wù)發(fā)現(xiàn)和執(zhí)行引擎。
1.3擁有Web服務(wù)發(fā)現(xiàn)和執(zhí)行引擎的必要性
在信息化大潮的推動下,未來人們的許多活動都將會在網(wǎng)上執(zhí)行,有了這樣的Web服務(wù)發(fā)現(xiàn)和執(zhí)行引擎可以有效發(fā)現(xiàn)用戶所需的Web服務(wù),并且提供一個執(zhí)行機(jī)制,用戶搜索到某個具體的可執(zhí)行組件,而不管其是什么平臺,選定后在網(wǎng)頁中輸入執(zhí)行此操作所需的輸入數(shù)據(jù)后,遠(yuǎn)程的可執(zhí)行組件再將返回結(jié)果交給系統(tǒng)最后呈現(xiàn)給用戶。這樣,未來會出現(xiàn)這樣的情況,用戶想要完成銀行轉(zhuǎn)賬操作,不必去銀行主頁,而在引擎中輸入“銀行轉(zhuǎn)賬”幾個字,搜出一批結(jié)果,點擊某個進(jìn)入后,輸入數(shù)據(jù),即可執(zhí)行,完成了想要的服務(wù),十分方便。
1.4企業(yè)做信息整合時需要的
   互聯(lián)網(wǎng)正在發(fā)生很多變化。它已經(jīng)成了Web服務(wù)推動器,而不再僅僅是一個信息倉庫。很多組織都將它們的核心業(yè)務(wù)以Web服務(wù)的形式放到互聯(lián)網(wǎng)上,并在互聯(lián)網(wǎng)上找到其他所需Web服務(wù),從而構(gòu)建出新的增值服務(wù)。因此,需要一個類似當(dāng)前廣泛使用的搜索引擎的工具,以有效發(fā)現(xiàn)所需Web服務(wù),并及時執(zhí)行,從而可以測試發(fā)現(xiàn)服務(wù)的可用性、可靠性和正確性,為實現(xiàn)整合提供支持并保障整合的有效性。
2 國內(nèi)外研究現(xiàn)狀
  而ebXML,XML/EDI體系結(jié)構(gòu)里的注冊表也是屬于一種資源庫,但是它存放的是一種具有協(xié)作關(guān)系的Web服務(wù),即它們是貿(mào)易伙伴。我想目前來說,跟Web服務(wù)搜索有關(guān)能扯上關(guān)系的,說得最多的應(yīng)該算是UDDI了吧,
2.1 UDDI
UDDI,統(tǒng)一描述、發(fā)現(xiàn)和集成協(xié)議,它的數(shù)據(jù)結(jié)構(gòu)是無限制的,只規(guī)定了很少的信息,而且結(jié)構(gòu)所基于的分類數(shù)據(jù)(categorization data)也不是被廣泛認(rèn)同的——這樣的數(shù)據(jù)結(jié)構(gòu)造成了極多問題。UDDI 曾被定位為企業(yè)內(nèi)部的技術(shù),也就是在這方面UDDI取得了一些成功,但是 UDDI在這方面的標(biāo)準(zhǔn)工作做得仍不夠。最主要的一個不足是,使用一個XML文檔來描述企業(yè)及其提供的Web服務(wù),對于那些服務(wù)消費(fèi)者他們從UDDI資源庫里只能找到以下三種信息:1.服務(wù)提供商的地址,聯(lián)系方法,和已知的企業(yè)標(biāo)識。2.基于標(biāo)準(zhǔn)分類法的行業(yè)類別。3.關(guān)于該企業(yè)所提供的Web服務(wù)的技術(shù)信息,其形式可能是一些指向文件或是URL的指針,而這些文件或URL是為服務(wù)發(fā)現(xiàn)機(jī)制服務(wù)的。而有了這些信息也還不能去執(zhí)行一個特定的Web服務(wù),服務(wù)消費(fèi)者自己還必須做很多額外的工作才能使那些搜索到的Web服務(wù)給自己有效利用。
2.2 ebXML,XML/EDI
20多年前,電子商務(wù)的想法誕生,通過鏈接在一起的計算機(jī)系統(tǒng),數(shù)據(jù)能從一個系統(tǒng)傳送到其他系統(tǒng),從而不再使用紙介質(zhì)文件來交換商業(yè)數(shù)據(jù)。這個概念就是70年代中期產(chǎn)生的EDI(Electronic Data Interchange,電子數(shù)據(jù)交換)的原型。EDI的出現(xiàn)大大提高了商業(yè)運(yùn)作效率,但雖然全世界的前10000家公司中98%以上都在使用EDI,但全世界其他公司中卻僅有5%是EDI的用戶,因為EDI雖然很有效,但啟動費(fèi)用很高。當(dāng)時人們一直在尋找EDI的替代方案,希望能夠找到一種使全球不同規(guī)模的公司都能受益的簡單、便宜的交換標(biāo)準(zhǔn)商務(wù)文檔的方法。在這樣的背景下ebXML應(yīng)運(yùn)而生了。ebXML的技術(shù)體系結(jié)構(gòu)里的注冊表(registry),企業(yè)通過注冊表登記CPP(collaboration protocol profile,合作草案檔案),列出它們的電子商務(wù)服務(wù)能力供潛在的貿(mào)易伙伴檢索,也可以通過注冊表搜索合適的貿(mào)易伙伴。知識庫(repository)則是用于存儲這些內(nèi)容的。
ebXML和Web服務(wù)所具有的共同特點是:基于松散耦合的應(yīng)用交互。松散耦合的特性意味著企業(yè)可以自由地選擇供應(yīng)廠商、硬件平臺、軟件框架等電子商務(wù)的組成部分,只要這些供應(yīng)廠商在相應(yīng)的硬件平臺上提供了支持ebXML規(guī)范或Web服務(wù)規(guī)范的軟件框架就能夠構(gòu)建可用于交易的電子商務(wù)系統(tǒng)。ebXML的注冊系統(tǒng)(repository)提供一整套分布式服務(wù),使得彼此有意愿進(jìn)行商務(wù)流程集成的企業(yè)可以通過共同遵循ebXML規(guī)范來達(dá)到共享信息以及應(yīng)用集成的目的。但是通過ebXML的注冊系統(tǒng)(repository)搜索到的只是合適的貿(mào)易伙伴,關(guān)注點并不是具體到某種詳細(xì)的Web服務(wù)。
3 我們的解決方案
基于1.1項目背景意義跟1.2國內(nèi)外研究現(xiàn)狀,我們Cactus團(tuán)隊實現(xiàn)了這樣的解決方案:基于XML和Web Service技術(shù),開發(fā)了一個Web服務(wù)動態(tài)搜索與執(zhí)行引擎。
3.1本項目完成的功能
首先是Web服務(wù)的搜索功能,用戶可以像百度等典型搜索引擎那樣輸入Web服務(wù)名關(guān)鍵字,然后系統(tǒng)的搜索模塊可以返回當(dāng)前在我們系統(tǒng)的服務(wù)資源庫里注冊的所有帶有用戶輸入的關(guān)鍵名的Web服務(wù)列表,服務(wù)消費(fèi)者可以選擇他所想要的Web服務(wù),查看有關(guān)此Web服務(wù)的所有詳細(xì)信息,如提供商的信息,Web服務(wù)的信息等。更重要的是Web服務(wù)的執(zhí)行功能:對于想要執(zhí)行Web服務(wù)的某種操作的消費(fèi)者來說,我們的系統(tǒng)為消費(fèi)者屏蔽掉了執(zhí)行遠(yuǎn)程Web服務(wù)的復(fù)雜過程,所以無論遠(yuǎn)程的Web服務(wù)是基于何種平臺開發(fā)出來的,在服務(wù)消費(fèi)者看來都是做這幾個簡單的操作:當(dāng)服務(wù)消費(fèi)者搜索到他所想要的Web服務(wù)后,進(jìn)入到了Web服務(wù)詳細(xì)信息頁面,此頁面列出了這個Web服務(wù)的所有可執(zhí)行操作列表,消費(fèi)者可以選擇想要的操作,然后填寫執(zhí)行此操作所需的某些數(shù)據(jù)后傳到系統(tǒng),然后系統(tǒng)以用戶的輸入作為有效負(fù)載遠(yuǎn)程調(diào)用此可執(zhí)行組件,再將返回結(jié)果交給系統(tǒng)進(jìn)行解析,最后呈現(xiàn)給用戶。
那些在不同的平臺下已經(jīng)開發(fā)好web服務(wù)的個人或公司,只要提供一個開發(fā)好的Web服務(wù)的描述文件WSDL文檔的URL,可以不受異構(gòu)平臺的影響把他們的Web服務(wù)注冊到我們系統(tǒng)的服務(wù)資源庫中,我們的系統(tǒng)將會做為一個”傳媒中介機(jī)構(gòu)”向服務(wù)的消費(fèi)者們展示服務(wù)提供者所提供的web服務(wù)的有關(guān)信息。
3.2本項目的創(chuàng)新點。
3.2.1 Web服務(wù)的調(diào)用技術(shù)
傳統(tǒng)的WEB服務(wù)調(diào)用方的構(gòu)建是在服務(wù)的調(diào)用方人為的對WEB服務(wù)了解的情況下進(jìn)行的,不能實現(xiàn)一個針對任何服務(wù)都能使用的公用客戶端,面對我們的需求,需要反復(fù)的重寫代碼,根本不可取。
我們運(yùn)用WSDL4J與SAAJ技術(shù)自行構(gòu)建SOAP消息,構(gòu)建出了一個公共的客戶端應(yīng)用,很好的解決了我們的需求。
備注:WSDL4J與SAAJ經(jīng)常是為供應(yīng)商底層實現(xiàn)標(biāo)準(zhǔn)API所用(如傳統(tǒng)方式客戶端代理程序的構(gòu)建底層就運(yùn)用了以上兩種技術(shù)),我們利用此技術(shù)屬于深度挖掘,從底層實現(xiàn)。
3.2.2 基于Lucene的Web服務(wù)搜索
本地服務(wù)資源庫是一個存放有關(guān)遠(yuǎn)程web服務(wù)的索引數(shù)據(jù)庫,如果通過SQL直接查詢數(shù)據(jù)庫速度將會難以忍受。為了提高檢索效率,需要建立索引,按照倒排文件的格式存放。用戶輸入搜索條件后搜索程序?qū)⑼ㄟ^索引數(shù)據(jù)庫Lucene,進(jìn)行檢索然后把符合查詢要求的數(shù)據(jù)庫按照一定的策略進(jìn)行分級排列并且返回給用戶。
3.2.3 J2ME手機(jī)客戶端開發(fā)技術(shù)
用戶除了可以使用游覽器,通過Internet,HTTP協(xié)議以及手機(jī)游覽器通過WAP協(xié)議訪問外,我們還使用SUN公司的J2ME技術(shù),給用戶提供了一個手機(jī)客戶端應(yīng)用,手機(jī)用戶可以通過GPRS連接系統(tǒng)的服務(wù)器進(jìn)行方便的操作。
附Cactus團(tuán)隊成員合照: 

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多