PHP是一款服務(wù)器端的腳本語(yǔ)言,主要用于動(dòng)態(tài)網(wǎng)頁(yè)開(kāi)發(fā),是目前最流行的開(kāi)發(fā)語(yǔ)言之一。Node是一款用來(lái)編寫(xiě)高性能網(wǎng)絡(luò)服務(wù)器的JavaScript工具包。作者Jani Hartikainen發(fā)表了一篇博文,文中將兩者進(jìn)行對(duì)比,列舉了PHP優(yōu)于Node.js的五大理由。一起來(lái)看下。
1. 容易托管
大多數(shù)Web托管服務(wù)器提供商能為PHP提供托管,而對(duì)于Node,你需要找一個(gè)更專(zhuān)業(yè)的托管服務(wù)提供商。通常情況下,需要通過(guò)shell訪問(wèn)來(lái)設(shè)置應(yīng)用程序,并且大部分托管提供商不包含這些,即便是包含此功能的,其他的包要相對(duì)的廉價(jià)些。
2. PHP在服務(wù)器上安裝更方便、簡(jiǎn)易
PHP可輕易的安裝WAMP,LAMP或者M(jìn)AMP,將代碼部署到一個(gè)Web虛擬主機(jī),只需要拖放文件,就可大功告成。
雖然,Node本身并不難安裝,但是仍需要具備更多的專(zhuān)業(yè)知識(shí)才能將它設(shè)置好,為了能夠在服務(wù)器上安裝,你通常需要了解一些Linux系統(tǒng)管理員方面的知識(shí),以便你在安裝過(guò)程中當(dāng)系統(tǒng)奔潰時(shí)確保node能夠很好的運(yùn)行。
3. 如果PHP代碼損壞,不會(huì)拖垮整個(gè)服務(wù)器
PHP代碼只運(yùn)行在自己的進(jìn)程范圍中,當(dāng)某個(gè)請(qǐng)求顯示錯(cuò)誤時(shí),它只對(duì)特定的請(qǐng)求產(chǎn)生影響。而在Node環(huán)境中,所有的請(qǐng)求均在單一的進(jìn)程服務(wù)器中,當(dāng)某個(gè)請(qǐng)求導(dǎo)致未知錯(cuò)誤時(shí),整個(gè)服務(wù)器都會(huì)受到影響。
4. PHP進(jìn)程短暫
在PHP中每個(gè)進(jìn)程對(duì)請(qǐng)求持續(xù)的時(shí)間很短暫,這就意味著你不必為資源配置和內(nèi)存而擔(dān)憂(yōu)。而Node在進(jìn)程過(guò)程中需要運(yùn)行很長(zhǎng)一段時(shí)間,你需要小心并妥善管理好內(nèi)存。比如,如果你忘記從全局?jǐn)?shù)據(jù)中刪除條目,這會(huì)輕易的導(dǎo)致你將內(nèi)存泄露。
5.更大的標(biāo)準(zhǔn)庫(kù)
PHP的標(biāo)準(zhǔn)庫(kù)比Node的標(biāo)準(zhǔn)庫(kù)要大的多。
結(jié)束語(yǔ):
當(dāng)然,并不是說(shuō)PHP在各個(gè)方面都優(yōu)于Node,在某些事情上,Node還是很不錯(cuò)的(比如,信息實(shí)時(shí)處理方面),Node是一個(gè)有趣的產(chǎn)品,它有一個(gè)優(yōu)雅的架構(gòu)。盡管Node.js 不是銀彈,但它仍然是顆子彈。
開(kāi)發(fā)者們對(duì)編程語(yǔ)言的喜好總是各有千秋,每一門(mén)語(yǔ)言都有它存在的價(jià)值,筆者認(rèn)為選擇自己最適合的才是最重要的。除了以上這些,PHP還在哪些方面優(yōu)于Node呢?歡迎您在評(píng)論中列出。
該文章在 2012/4/27 22:28:07 編輯過(guò)