Web Service也稱為XML Web Service,WebService是一種可以接收Internet或者Intranet上傳遞過來的請求,是輕量級獨(dú)立的通訊技術(shù),具有很好的跨平臺(tái)性能,因此使用Web Service有許多優(yōu)點(diǎn):
1. 跨防火墻的通信
Web Service具有良好的跨防火墻通信功能,能夠解決傳統(tǒng)客戶端和服務(wù)器大量用戶通信難度問題,Web Service充當(dāng)中間層組件,可以從用戶界面直接調(diào)取中間層組件,相比于傳統(tǒng)ASP頁面,不僅縮短了開發(fā)周期,還降低了代碼復(fù)雜度,增強(qiáng)了應(yīng)用程序的可維護(hù)性。
2. 應(yīng)用程序集成
Web Service可以實(shí)現(xiàn)應(yīng)用程序集成,即應(yīng)用程序可以用標(biāo)準(zhǔn)的方法把功能和數(shù)據(jù)"暴露"出來,供其它應(yīng)用程序使用。XML Web services 提供了在松耦合環(huán)境中使用標(biāo)準(zhǔn)協(xié)議(HTTP、XML、SOAP 和 WSDL)交換消息的能力。消息可以是結(jié)構(gòu)化的、帶類型的,也可以是松散定義的。
3. B2B的集成
Web Servic可用于B2B集成,通過Web Service,公司僅需把“商務(wù)邏輯”暴露給指定的合作伙伴,不管他們的系統(tǒng)在什么平臺(tái)上運(yùn)行,使用什么開發(fā)語言,均可輕松調(diào)用,還具有互操作性、運(yùn)行成本低等特點(diǎn)。
4. 軟件和數(shù)據(jù)重用
Web Service不僅可以實(shí)現(xiàn)代碼重用,還可進(jìn)行數(shù)據(jù)的重用,而且無需購買、安裝,僅需遠(yuǎn)程調(diào)用即可實(shí)現(xiàn)功能調(diào)用,除了調(diào)用別人的代碼、數(shù)據(jù)外,還可以把自己的應(yīng)用程序通過Web Service提供給別人,方便快捷!
Web Service在web互操作和遠(yuǎn)程調(diào)用方面發(fā)揮巨大優(yōu)勢,但其也有一定的局限性,以下情況不適合使用Web Service。
1. 單機(jī)應(yīng)用程序
對于一些不進(jìn)行遠(yuǎn)程通信,只需進(jìn)行本機(jī)通信的用戶,最好就不要用WebService,只要用本地的API就可以了,運(yùn)行在同一臺(tái)服務(wù)器上的服務(wù)器軟件也是這樣,當(dāng)然Web Service 也能用在這些場合,但那樣不僅消耗太大,而且不會(huì)帶來任何好處。
2. 局域網(wǎng)的一些應(yīng)用程序
在許多應(yīng)用中,所有的程序都是在Windows平臺(tái)下使用COM,都運(yùn)行在同一個(gè)局域網(wǎng)上。在這些程序里,使用DCOM會(huì)比SOAP/HTTP有效得多。與此相類似,如果一個(gè).net程序要連接到局域網(wǎng)上的另一個(gè).net程序,應(yīng)該使用.net Remoting。其實(shí)在.net Remoting中,也可以指定使用SOAP/HTTP來進(jìn)行Web Service 調(diào)用。不過最好還是直接通過TCP進(jìn)行RPC調(diào)用,那樣會(huì)有效得多。