您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關(guān)Node.js能做什么的內(nèi)容。小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過(guò)來(lái)看看吧。
作為中間層
我們通常說(shuō)前端和后端,前端負(fù)責(zé)用戶界面,而后端負(fù)責(zé)提供數(shù)據(jù)和業(yè)務(wù)接口?,F(xiàn)在我們?cè)趦烧唛g加入一層,前端并不是直接去請(qǐng)求后端業(yè)務(wù)接口,而是請(qǐng)求到中間層。再由中間層去請(qǐng)求業(yè)務(wù)接口,看一下示意圖:
整個(gè)流程可以描述為:客戶端直接請(qǐng)求到中間層的Node服務(wù),Node服務(wù)分析請(qǐng)求,看需要哪個(gè)頁(yè)面,再去請(qǐng)求對(duì)應(yīng)數(shù)據(jù),拿到數(shù)據(jù)后和模版結(jié)合成用戶看到頁(yè)面,再給到客戶端。
那么有的人可能會(huì)覺(jué)得,這種模式不是更麻煩了嗎?其實(shí)不然,我們來(lái)看看中間層的優(yōu)點(diǎn):
1. 減輕客戶端內(nèi)存,項(xiàng)目用戶體驗(yàn)好。不會(huì)像mvvm模式的項(xiàng)目把頁(yè)面渲染和數(shù)據(jù)請(qǐng)求都?jí)涸诳蛻舳耍窃诜?wù)端完成。
2. SEO性好,不像mvvm模式頁(yè)面由js生成,而是在服務(wù)器渲染好html 字符,有利于網(wǎng)頁(yè)被搜索到。
3. 保持了前后端分離的優(yōu)點(diǎn)和目的,即解放后端,后端可以繼續(xù)以接口的形式寫業(yè)務(wù)代碼。
4. 前端可以操控的范圍增多,甚至可以做服務(wù)器,數(shù)據(jù)庫(kù)層面的優(yōu)化,比如中間層中常常用nginx,redis來(lái)優(yōu)化項(xiàng)目,應(yīng)對(duì)高并發(fā)。
中間層模式是一種開(kāi)發(fā)模式上的進(jìn)步,為什么這么好的模式我從來(lái)沒(méi)有聽(tīng)說(shuō)過(guò)呢?因?yàn)檫@種模式成本過(guò)高,如果沒(méi)有一定量級(jí)的項(xiàng)目沒(méi)必要去采用。
目前很多一線大廠已經(jīng)在使用了,比如淘寶、Facebook(php寫的中間層)?;ヂ?lián)網(wǎng)的潮流往往都是一線互聯(lián)網(wǎng)公司開(kāi)始普及的,一線互聯(lián)網(wǎng)公司開(kāi)始大規(guī)模采用,慢慢的會(huì)變成普通公司也開(kāi)始普及,所以這也是我們想在將來(lái)穩(wěn)住自己工作的必備技能。但是目前中間層的資料十分少,學(xué)習(xí)起來(lái)可以說(shuō)困難重重。
做項(xiàng)目構(gòu)建工具
這里說(shuō)的項(xiàng)目構(gòu)建工具,我相信大家都用過(guò),比如現(xiàn)在市面上最常用的webpack就是其中之一。那么大家覺(jué)得這一類工具神奇好用方便的同時(shí),有沒(méi)有想過(guò)這些工具是拿什么語(yǔ)言寫的?其實(shí)它們并不難,這些工具都是用Node來(lái)寫的。
很多公司都會(huì)開(kāi)發(fā)自己公司的項(xiàng)目構(gòu)建工具,幫助公司項(xiàng)目做的更標(biāo)準(zhǔn)更方便,一個(gè)好的項(xiàng)目構(gòu)建工具,會(huì)極大的加快整個(gè)公司的項(xiàng)目開(kāi)發(fā)效率。
這一類的項(xiàng)目構(gòu)建工具一般都要很多的文件操作,Node對(duì)于i/o流的操作,在目前的主流后端語(yǔ)言中數(shù)一數(shù)二。所以越來(lái)越多的公司選擇用Node來(lái)做項(xiàng)目構(gòu)建工具。
做一些小型網(wǎng)站后端
用Node做后端,可能是大多數(shù)人認(rèn)為的Node作用。其實(shí)真正在企業(yè)之中,很少會(huì)讓你去用Node去做后端。 所以一般來(lái)說(shuō)都是做一些小型或者個(gè)人站的后端。
感謝各位的閱讀!關(guān)于“Node.js能做什么”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎ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)容。