好程序員web前端學(xué)習(xí)路線nodeJs學(xué)習(xí)過(guò)程之認(rèn)識(shí)nodejs-創(chuàng)新互聯(lián)

好程序員web前端學(xué)習(xí)路線nodeJs學(xué)習(xí)過(guò)程之認(rèn)識(shí)nodejs,nodeJs只是聽(tīng)說(shuō)過(guò),沒(méi)見(jiàn)過(guò),沒(méi)玩過(guò)。從新手開(kāi)始,我想慢慢掌握它。

創(chuàng)新互聯(lián)專注于云岡企業(yè)網(wǎng)站建設(shè),自適應(yīng)網(wǎng)站建設(shè),成都商城網(wǎng)站開(kāi)發(fā)。云岡網(wǎng)站建設(shè)公司,為云岡等地區(qū)提供建站服務(wù)。全流程定制網(wǎng)站開(kāi)發(fā),專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)

首先,我想知道nodeJs是什么?干什么用的。
 來(lái)源于node官網(wǎng)與網(wǎng)絡(luò):

Node.js 是一個(gè)基于 Chrome V8 引擎的 JavaScript 運(yùn)行環(huán)境。?
Node.js 使用了一個(gè)事件驅(qū)動(dòng)、非阻塞式 I/O 的模型,使其輕量又高效。

Node.js是一套用來(lái)編寫(xiě)高性能網(wǎng)絡(luò)服務(wù)器的JavaScript工具包,一系列的變化由此開(kāi)始。比較獨(dú)特的是,Node.js會(huì)假設(shè)在POSIX環(huán)境下運(yùn)行Linux 或 Mac OS X。
如果是在Windows下,那就需要安裝MinGW以獲得一個(gè)仿POSIX的環(huán)境。在Node中,Http是首要的。Node為創(chuàng)建http服務(wù)器作了優(yōu)化,所以在網(wǎng)上看到的大部分示例和庫(kù)都是集中在web上(http框架、模板庫(kù)等)。

做些什么呢

  1. 用于web服務(wù)器端;

  2. javascript工具包;

  3. 和http有著密切的關(guān)系。
  4. 快速構(gòu)建網(wǎng)絡(luò)服務(wù)及應(yīng)用;

  5. 封裝谷歌v8引擎。

nodeJs到底是什么呢,它是服務(wù)器端js運(yùn)行平臺(tái),是一個(gè)javascript的運(yùn)行環(huán)境和庫(kù)??梢跃帉?xiě)后臺(tái)系統(tǒng)或者服務(wù)器端的Javascript代碼,交給 Node.js來(lái)解釋執(zhí)行。就像html遇到php會(huì)由php來(lái)解釋,jsp由jvm解釋執(zhí)行一樣。

他還有很多的特性就不一一舉例了。Nodejs作為后起之秀的后臺(tái),也有很多吸引人的地方:?jiǎn)尉€程、V8虛擬機(jī)、事件驅(qū)動(dòng)、非阻塞IO;nodejs可以不新增額外線程的情況下,依然可以對(duì)任務(wù)進(jìn)行并處理 --node是單線程的。它是通過(guò)事件輪詢來(lái)實(shí)行操作的,對(duì)此我們可以充分的利用這一點(diǎn),盡可能的避免阻塞,取而代之。

那nodejs是做什么的?服務(wù)端類似于Java,web應(yīng)用等;

舉個(gè)例子:

var http = require('http');

server = http.createServer(function (req, res) {

res.writeHeader(200, {"Content-Type": "text/plain"});

res.end("Hello");

})

server.listen(8000);

console.log("httpd start @8000");

確保nodejs環(huán)境安裝成功,對(duì)此編譯執(zhí)行通過(guò),在瀏覽器地址欄輸入localhost:8000,可以看到輸出。

nodeJS的優(yōu)缺點(diǎn)

優(yōu)點(diǎn):1. 高并發(fā)

  1. 適合I/O密集型應(yīng)用

缺點(diǎn):1. 不適合CPU密集型應(yīng)用;由于JavaScript單線程的原因,如果有長(zhǎng)時(shí)間運(yùn)行的計(jì)算(比如大循環(huán)),將會(huì)導(dǎo)致CPU時(shí)間片不能釋放,使得后續(xù)I/O無(wú)法發(fā)起;

解決方案:分解大型運(yùn)算任務(wù)為多個(gè)小任務(wù),使得運(yùn)算能夠適時(shí)釋放,不阻塞I/O調(diào)用的發(fā)起;

  1. 只支持單核CPU,不能充分利用CPU

  2. 可靠性低,一旦代碼某個(gè)環(huán)節(jié)崩潰,整個(gè)系統(tǒng)都崩潰

原因:?jiǎn)芜M(jìn)程,單線程

解決方案:(1)Nnigx反向代理,負(fù)載均衡,開(kāi)多個(gè)進(jìn)程,綁定多個(gè)端口;

(2)開(kāi)多個(gè)進(jìn)程監(jiān)聽(tīng)同一個(gè)端口,使用cluster模塊;

  1. 開(kāi)源組件庫(kù)質(zhì)量參差不齊,更新快,向下不兼容

  2. Debug不方便,錯(cuò)誤沒(méi)有stack trace

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

當(dāng)前題目:好程序員web前端學(xué)習(xí)路線nodeJs學(xué)習(xí)過(guò)程之認(rèn)識(shí)nodejs-創(chuàng)新互聯(lián)
鏈接URL:http://muchs.cn/article12/dhisgc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作、品牌網(wǎng)站制作、網(wǎng)站收錄響應(yīng)式網(wǎng)站、品牌網(wǎng)站建設(shè)App開(kāi)發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名