為什么要用node.js它又有什么優(yōu)勢(shì)呢?一個(gè)新的技術(shù)被大家喜愛那么它就必然有它的優(yōu)勢(shì),那么下面我們就來(lái)簡(jiǎn)單把它和php做一個(gè)對(duì)比

1 . Node.js 他用的是JavaScript引擎,那么注定它是單線程 ,使用異步方法開辟多個(gè)任務(wù),無(wú)需像php等待上個(gè)任務(wù)線程使用結(jié)束之后給下個(gè)使用,

   PHP也是單線程但是它借用Apache服務(wù)器提供多線程服務(wù)

Android培訓(xùn),安卓培訓(xùn),手機(jī)開發(fā)培訓(xùn),移動(dòng)開發(fā)培訓(xùn),云培訓(xùn)培訓(xùn)

2 . 高并發(fā),大數(shù)據(jù)量怎么處理:

php : 優(yōu)化sql ,用組件,用緩存,為了讓線程盡快結(jié)束,進(jìn)行下一次任務(wù)

node:?jiǎn)尉€程 、異步、事件驅(qū)動(dòng)

 

下面是他們處理事件,

     php上下銜接依次執(zhí)行,

     node中因?yàn)檫\(yùn)行速度很快并不會(huì)等待,所以如果后面用到前面返回的結(jié)果,就需要把后面的封裝起來(lái),作為一個(gè)回調(diào)函數(shù)執(zhí)行

Android培訓(xùn),安卓培訓(xùn),手機(jī)開發(fā)培訓(xùn),移動(dòng)開發(fā)培訓(xùn),云培訓(xùn)培訓(xùn)

node.js vs php

 

優(yōu)點(diǎn):

  性能高(運(yùn)行機(jī)制問題)

  開發(fā)效率高(省不少優(yōu)化的事)

  應(yīng)用范圍廣(可以開發(fā)桌面系統(tǒng),electron框架)

缺點(diǎn):

  新、人少

  中間件少

  IDE不完善

  

node.js的劣勢(shì)和解決方案

  

  1 默認(rèn)不支持多核,但可以用cluster解決

  2 默認(rèn)不支持服務(wù)器集群,node-http-proxy可以解決

  3 使用nginx做負(fù)載均衡,靜態(tài)的由nginx處理,動(dòng)態(tài)的有node.js處理

  4 forever或node-cluster實(shí)現(xiàn)災(zāi)難恢復(fù)

 

 

下面是 一個(gè)數(shù)據(jù)測(cè)試

  請(qǐng)求-->隨機(jī)創(chuàng)建內(nèi)容是20k字符的文檔 -->讀取文檔 -->輸出

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式