PHP 的優點:

眾所皆知  PHP 廣泛使用在網路世界,有許多知名的站都是採用  PHP,像是  facebookWikipedia,而且要找到  hosting 的方案也很容易。

對內容網站來說,使用  PHP 有其優點。

 

 

PHP 的缺點:

PHP 無法處理耗時較久/記憶體耗用大的工作。

PHP 無法平行執行程式碼。

Apache+PHP 的環境設定較複雜,作  URL maping 需要 .htaccess 輔助。

套件管理程式不優。

處理完資料後,無法儲存在記憶體中(雖然有第三方的工具可以支援)。

 

 

Node.js 的優點

Node.js 最強的就是它的事件驅動設計,簡單、威力強大而且有一致的介面。

作者說有人認為  Node.js 內建  Server 是壞事,他覺得說這些話的人瘋了。

Node.js 和  Server 一體的好處,是每個  request 都知道在相同的處理程序中,知道該往哪走,而不需要  .htaccess 這些額外的設定來處理。

Web 應用程式瓶頸通常出現在  network 的  I/O,而  Node.js 的強項正在這裡。

Node.js 採用  JavaScript,因此對  Web 開發人員來說通常已經很熟悉,要入門很快。

Node.js 的套件管理系統  NPM 做的相當好,而且每個人都可以輕易的將自己開放的東西放上去。

Node.js 將資料存放在記憶體中相當然容易,便於讓不同的 client 存取。

 



Node.js 的缺點

Node.js 的缺點就是新,還不夠穩定,API 經常在更新,如果要開發大型的應用程式,也許  Node.js 不是一個最佳選項。

如果要處理大量的靜態檔案,也許  Node.js 也不是最佳選擇,它必須回到利用檔案系統來檢查檔案是否存在。

另外  JavaScript 對  Class based 和不熟悉非同步的開發者來說,也有適應上的痛苦。

另外雖然讓資料常駐在記憶體中雖然很容易,不過同時也招來風險,除了有可能導致記憶體洩露,也可能導致  Node.js 炸掉。

至於該學哪一個,作者的建議是如果你是  server side 開發的完全初學者,PHP  還是相當值得學的,不過如果你想要做一些較特別的應用,也許  Node.js 就值得一試。

但如果是以  Single Page Application 來說,Node.js 是比 PHP 佔優勢,但  Node.js 是不是最後的贏家,作者也有所保留,他認為  JavaScript 一些先天上的缺點,讓其它語言有機會迎頭趕上(作者比較狠,用easily kick its ass)

最後,作者打趣的說,用  PHP 要作出  Node.js 的機制,必須要用一堆東西才戸兜得出來;而  Node.js 要模擬  PHP,只需要改用同步機制就行了。

 

 

article reproduced:http://thomashunter.name/blog/php-vs-nodejs/

article reproduced:http://ithelp.ithome.com.tw/question/10095722?tag=rt.rq

mitblog 發表在 痞客邦 留言(2) 人氣()