隨著企業(yè)信息化的不斷深入,企業(yè)各種異構(gòu)信息系統(tǒng)的數(shù)據(jù)交互需求日益增多。Web Service完全基于XML、XSD等獨立于平臺和軟件供應(yīng)商標(biāo)準(zhǔn)的技術(shù),是創(chuàng)建可互操作的、分布式應(yīng)用程序的新平臺,能很好的解決異構(gòu)系統(tǒng)交互的需求,將分散在各種系統(tǒng)、信息孤島中的數(shù)據(jù)進行整合,讓管理者們能夠?qū)崟r地訪問這些數(shù)據(jù)。SOA(Service-Oriented Architecture,面向服務(wù)架構(gòu))思想是當(dāng)今企業(yè)軟件架構(gòu)的熱點,通過允許強定義的關(guān)系,使業(yè)務(wù)IT 系統(tǒng)變得更加靈活,適應(yīng)業(yè)務(wù)中的改變,IT 系統(tǒng)既可以利用現(xiàn)有系統(tǒng)的功能,也可以做出改變來滿足它們之間交互的需要。目前,Web Service 是SOA 的一種較好的實現(xiàn)方式,因此Web Service的應(yīng)用也有助于在SOA架構(gòu)方面的探索打下基礎(chǔ)。下面本文將從四個方面全面介紹Web Service開發(fā)技術(shù)。
一、需求決定選擇
在使用Web Service開發(fā)技術(shù)之前,首先需要明確的問題是Web Service技術(shù)是否滿足企業(yè)項目的實際需求。Web Service的通信基于SOAP協(xié)議,SOAP協(xié)議現(xiàn)階段是綁定在HTTP協(xié)議上傳輸?shù)模@使得Web Service可以跨越不同平臺,穿越防火墻實現(xiàn)異構(gòu)環(huán)境下的遠程集成。正如每枚硬幣都有正反兩面,Web Service的跨平臺特性也是一把雙刃劍,它在斬斷異構(gòu)遠程平臺集成的羈絆的時候也帶來了效率問題。這是由于Web Service在客戶端要完成調(diào)用請求向XML格式數(shù)據(jù)的轉(zhuǎn)換,并用SOAP協(xié)議傳輸;服務(wù)器端在接收到XML格式的SOAP消息之后,需要解析成本地環(huán)境的調(diào)用信息然后完成調(diào)用。由此可見,Web Service在實現(xiàn)異構(gòu)環(huán)境下遠程應(yīng)用集成的時候付出了雙層信息轉(zhuǎn)化和傳輸信息量增大的代價。因此對于同構(gòu)環(huán)境下的應(yīng)用集成,Web Service技術(shù)并不適合,使用特定平臺下的遠程調(diào)用技術(shù),效率會更高,集成難度更小。
二、Web Service開發(fā)模式
在軟件建模中有三種方式:自底向上,自頂向下和雙向模式。Web Service的開發(fā)模式對應(yīng)的也有三種:
- “自底向上”模式:從實現(xiàn)接口代碼開始生成WSDL 文檔。
- “自頂向下”模式:從WSDL 文檔開始生成實現(xiàn)接口代碼。
- “雙向”模式:從WSDL 文檔開始生成實現(xiàn)接口代碼,接著使用生成的實現(xiàn)接口代碼來生成WSDL 文檔,然后使用生成的WSDL 文檔來生成最終的實現(xiàn)接口代碼。
三、開發(fā)框架選擇
現(xiàn)階段,Web Service開發(fā)框架有幾十種之多。主流的開發(fā)框架有四種:Axis、Axis2、Xfire和CXF。其中歷史最悠久的是Axis框架,應(yīng)用也最廣泛,但Axis框架在2006年4月底之后就停止更新了;Xfire也是應(yīng)用較廣泛的Web Service開發(fā)框架,它在2007年5月停止更新;Axis2 由Axis系列演化過來,對Axis 進行了徹底重寫,它使用了新的模塊化架構(gòu),更方便于功能性的擴展;CXF是XFire和Celtix項目的結(jié)合產(chǎn)品,重新的深化了XFire和Celtix這兩個開發(fā)工具。四種開發(fā)框架的主要特點是:
- Axis項目成熟,文檔多,但是后續(xù)沒有更新,效率較低。
- Axis2(Axis2和Axis相差很大)支持多語言開發(fā),但復(fù)雜性高,依賴的包數(shù)量和大小都較大,打包部署發(fā)布較麻煩,不能很好的與現(xiàn)有應(yīng)用整合為一體。
- XFire支持Web Service各項標(biāo)準(zhǔn)協(xié)議,可以方便快速地開發(fā)Web Service應(yīng)用,XFire提供了和Spring的集成支持,在Web Service開源社區(qū)擁有眾多的追隨者,且很容易在Spring中使用XFire構(gòu)建Web Service應(yīng)用,有后續(xù)項目CXF支持。
- CXF來自于XFire項目,經(jīng)過改造后形成的,就像目前的Struts2來自Web Work一樣。但目前CXF項目較新,不夠成熟,文檔較少。
四、Web Service測試
Web Service測試主要包含功能測試、性能測試和安全性測試三大要點。
- Web Service功能測試:測試系統(tǒng)所實現(xiàn)Web Service接口的功能。開發(fā)人員提供已實現(xiàn)功能的程序包,和待測試Web Service的方法名、參數(shù)以及實現(xiàn)的功能描述。測試要點是不同的參數(shù)組合,應(yīng)按設(shè)計要求返回相應(yīng)的信息。
- Web Service性能測試:測試系統(tǒng)所實現(xiàn)Web Service接口的性能,需要Web Service接口的功能測試已完畢。測試要點是測試并發(fā)調(diào)用Web Service接口,觀察其性能表現(xiàn),主要是在不同的并發(fā)量、持續(xù)運行時間和數(shù)據(jù)庫容量下,測試事務(wù)的響應(yīng)時間、總事務(wù)數(shù)、事務(wù)的成功率、點擊率等,同時監(jiān)控硬件資源的消耗情況。
- Web Service安全性測試:測試系統(tǒng)所實現(xiàn)Web Service接口的安全性。需要Web Service接口的功能測試已完畢。測試要點是測試Web Service接口的調(diào)用是否有用戶名、密碼驗證,惡意調(diào)用是否會導(dǎo)致系統(tǒng)崩潰等。
核心關(guān)注:拓步ERP系統(tǒng)平臺是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請注明出處:拓步ERP資訊網(wǎng)http://www.guhuozai8.cn/
本文標(biāo)題:WebService開發(fā)技術(shù)的奧秘
本文網(wǎng)址:http://www.guhuozai8.cn/html/support/1112156584.html