溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

php中webservice指的是什么

發(fā)布時(shí)間:2020-08-18 11:28:28 來(lái)源:億速云 閱讀:217 作者:小新 欄目:編程語(yǔ)言

小編給大家分享一下php中webservice指的是什么,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

php webservice是個(gè)很重型的規(guī)范,它的應(yīng)用協(xié)議是SOAP,它所依賴(lài)的下層通信方式不只是HTTP,也有SOAP over SMTP、SOAP over TCP,且HTTP協(xié)議群眾基礎(chǔ)廣,開(kāi)發(fā)調(diào)試方便。

php中webservice指的是什么

提到php的webservice。之前還是比較陌生的,因?yàn)榻佑|的少呀,幾乎在所有的公司中沒(méi)用過(guò),僅僅用過(guò)的一次好像是接入一個(gè)第三方的短信通道,用的是SOAP|WSDL。

一個(gè)很極端的話(huà)“webservice”已經(jīng)過(guò)時(shí)了一點(diǎn)不假:

1 WebService有很多協(xié)議,為什么HTTP比較流行?

WebService是個(gè)很重型的規(guī)范,它的應(yīng)用協(xié)議是SOAP(簡(jiǎn)單對(duì)象訪(fǎng)問(wèn)協(xié)議),它所依賴(lài)的下層通信方式不單單是HTTP,也有SOAP over SMTP, SOAP over TCP,由于HTTP協(xié)議群眾基礎(chǔ)廣,開(kāi)發(fā)調(diào)試方便,所以,成了WebService中最為流行的方式。

甚至很多公司在內(nèi)網(wǎng)通信,也用HTTP來(lái)做,比如,應(yīng)用調(diào)用搜索引擎,Solr就是一個(gè)例子。

但HTTP也是TCP上性能比較差的協(xié)議,因?yàn)镠TTP是基于TCP的,有3次握手,再加上HTTP是個(gè)文本傳輸協(xié)議(雖然也可以傳二進(jìn)制的附件,但業(yè)務(wù)邏輯還是文本用的多),又有很多復(fù)雜的HEADER。所以人們發(fā)明了一些更高效的通信協(xié)議來(lái)做遠(yuǎn)程調(diào)用,比如ACE、ICE、Corba、淘寶的HSF,但這是后話(huà)了,不展開(kāi)細(xì)說(shuō)。你只要知道,HTTP之所以流行,乃是簡(jiǎn)單易用群眾基礎(chǔ)廣的結(jié)果。

2 WebService為什么不如RESTful API流行

WebService誕生十幾年了,最初是IBM、微軟比較熱心在推,一直也不溫不火。倒是XML-RPC, RESTful以及比RESTful還要簡(jiǎn)陋的遠(yuǎn)程調(diào)用方式后來(lái)居上。感覺(jué)是不是有點(diǎn)像民間的Spring干掉官方的EJB?

究其原因,還是WebService實(shí)在太笨重了,SOAP信封猶如婆娘的裹腳布,又臭又長(zhǎng),廣大開(kāi)發(fā)人員是叔可忍嫂不能忍,于是就有了簡(jiǎn)化版的,叫XML-RPC,后來(lái)伴隨著Web2.0流行,RESTful獨(dú)領(lǐng)風(fēng)騷。我在10年前做過(guò)一個(gè)產(chǎn)品,純PHP+JS,標(biāo)準(zhǔn)的WebService,連WSDL我都要專(zhuān)門(mén)寫(xiě)個(gè)PHP程序來(lái)生成,還好只是我一個(gè)人開(kāi)發(fā),要是團(tuán)隊(duì)協(xié)作,我早就被罵得不成人形了。

再后來(lái),連RESTful都被嫌棄了,大伙兒干脆連PUT、DELETE都懶得用,直接用GET和POST。

同時(shí),我得說(shuō),這只是在互聯(lián)網(wǎng)領(lǐng)域,大部分企業(yè)的業(yè)務(wù)邏輯相對(duì)簡(jiǎn)單,同時(shí)工期又變態(tài)的短(就像大部分互聯(lián)網(wǎng)創(chuàng)業(yè)公司用糙快猛的PHP,而不用相對(duì)嚴(yán)謹(jǐn)?shù)腏ava一樣)。在某些業(yè)務(wù)復(fù)雜,穩(wěn)定性和正確性要求高的領(lǐng)域(如ERP、電商、支付),WebService還有是用武之地的。

3 為什么JSON比XML流行

還是易用性,JSON的可讀性比XML強(qiáng)幾條長(zhǎng)安街,解析規(guī)則也簡(jiǎn)單許多。XML解析的時(shí)候規(guī)則太多了,動(dòng)不動(dòng)就非法字符,動(dòng)不動(dòng)就拋異常。這對(duì)追求高開(kāi)發(fā)速度和低開(kāi)發(fā)門(mén)檻的企業(yè)來(lái)說(shuō),是個(gè)致命傷。

JSON的缺點(diǎn)是數(shù)據(jù)類(lèi)型支持較少,且不精確。比方說(shuō):

price:12580

在json里,你無(wú)法知道這個(gè)價(jià)格是int, float還是double。

所以,如上面第二條所述,在一些業(yè)務(wù)要求較高的領(lǐng)域,還是XML更合適。

最后說(shuō)一下性能,JSON的性能高于XML,除此之外,基于XML和HTTP的WebService, 基于JSON的RESTful API,并沒(méi)有性能差異。

XML性能糟糕到什么地步呢,有一種專(zhuān)門(mén)的CPU叫做XML Accelerator,專(zhuān)門(mén)為XML解析提供硬件加速。

以上是php中webservice指的是什么的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI