WebService是一種跨編程語言和跨操作系統(tǒng)平臺的遠(yuǎn)程調(diào)用技術(shù)。
所謂跨編程語言和跨操作平臺,就是說服務(wù)端程序采用java編寫,客戶端程序則可以采用其他編程語言編寫,
反之亦然!跨操作系統(tǒng)平臺則是指服務(wù)端程序和客戶端程序可以在不同的操作系統(tǒng)上運(yùn)行。
所謂遠(yuǎn)程調(diào)用,就是一臺計(jì)算機(jī)a上 的一個程序可以調(diào)用到另外一臺計(jì)算機(jī)b上的一個對象的方法,
譬如,銀聯(lián)提供給商場的pos刷卡系統(tǒng),商場的POS機(jī)轉(zhuǎn)賬調(diào)用的轉(zhuǎn)賬方法的代碼其實(shí)是跑在銀 行服務(wù)器上。
再比如,amazon,天氣預(yù)報系統(tǒng),淘寶網(wǎng),校內(nèi)網(wǎng),百度等把自己的系統(tǒng)服務(wù)以webservice服務(wù)的形式暴露出來,
讓第三方網(wǎng)站和程 序可以調(diào)用這些服務(wù)功能,這樣擴(kuò)展了自己系統(tǒng)的市場占有率,往大的概念上吹,就是所謂的SOA應(yīng)用。
其實(shí)可以從多個角度來理解 WebService,
從表面上看,WebService就是一個應(yīng)用程序向外界暴露出一個能通過Web進(jìn)行調(diào)用的API,
也就是說能用編程的方法通過 Web來調(diào)用這個應(yīng)用程序。我們把調(diào)用這個WebService的應(yīng)用程序叫做客戶端,
而把提供這個WebService的應(yīng)用程序叫做服務(wù)端。
從深層次 看,WebService是建立可互操作的分布式應(yīng)用程序的新平臺,
是一個平臺,是一套標(biāo)準(zhǔn)。它定義了應(yīng)用程序如何在Web上實(shí)現(xiàn)互操作性,你可以用任何 你喜歡的語言,
在任何你喜歡的平臺上寫Web service ,只要我們可以通過Web service標(biāo)準(zhǔn)對這些服務(wù)進(jìn)行查詢和訪問。
WebService平臺需要一套協(xié)議來實(shí)現(xiàn)分布式應(yīng)用程序的創(chuàng)建。
任何平臺都有它的數(shù)據(jù)表示方法和類型系統(tǒng)。
要實(shí)現(xiàn)互操作性,WebService平臺 必須提供一套標(biāo)準(zhǔn)的類型系統(tǒng),用于溝通不同平臺、編程語言和組件模型中的不同類型系統(tǒng)。
Web service平臺必須提供一種標(biāo)準(zhǔn)來描述 Web service,讓客戶可以得到足夠的信息來調(diào)用這個Web service。
最后,我們還必須有一種方法來對這個Web service進(jìn)行遠(yuǎn) 程調(diào)用,這種方法實(shí)際是一種遠(yuǎn)程過程調(diào)用協(xié)議(RPC)。
為了達(dá)到互操作性,這種RPC協(xié)議還必須與平臺和編程語言無關(guān)。
|