為什么Node.js會這么火呢?Node.js流行的原因
Node.js是一項服務(wù)器技術(shù),它用來構(gòu)建和運行Web應(yīng)用,這和ASP.NET,Ruby on Rails或Spring框架做的工作是類似 的。它使用JavaScript作為主要的開發(fā)語言,有一個自帶的輕量級Web服務(wù)器,還有Node包管理(NPM)的大量插件,你就可以按照你自己的需 求來塑造Web應(yīng)用,像添加MVC特性,加入Restful服務(wù),OAuth或SSL安全性等等。
語言的重復(fù)使用
像ASP.NET或Spring這樣的技術(shù)需要開發(fā)人員學(xué)習(xí)一門新的服務(wù)端語言,比如C#,VB.NET或者Java。而Node.js在服務(wù)端和客戶端都是使用JavaScript,這意味著開發(fā)人員在各層上只需使用一門語言。
對于開發(fā)者易轉(zhuǎn)型
有一個事實就是JavaScript是Web開發(fā)者們熟知的語言,大部分人都了解JavaScript或多少使用過它。所以說,一個Web開發(fā)人員從其他技術(shù)轉(zhuǎn)型到Node.js是很簡單的。
輕量級
Node.js使用的是事件驅(qū)動架構(gòu),這就是說在它上面做的每一件事,每一個獨立的調(diào)用和操作,都是一系列的異步回調(diào)。這使得Node.js運行在 一個線程上,這一點和其它的Web技術(shù)是不同的,它們每個客戶端的請求都會生成一個新的線程來處理。這也正是非阻塞I/O的本質(zhì)所在。
支持對象數(shù)據(jù)庫
在Node.js應(yīng)用中使用像MongoDB這樣的對象數(shù)據(jù)庫簡是十分常見的,MongoDB和傳統(tǒng)的SQL數(shù)據(jù)庫不同的是,它使用的是基于文檔的模型而非關(guān)系型模型,它用的不是表,而是類似JSON這樣的對象。這就很適合ORM的熱愛者了。
受到IDE和代碼編輯器的廣泛支持
JavaScript已經(jīng)存在相當(dāng)長一段時間了,所以像Visual Studio,Eclipse這樣的IDE都是支持JavaScript代碼提示和高亮的,另外像NotePad++和Sublime Text之類的代碼編輯器也同樣支持這些。
可以隨處托管服務(wù)
一些Web服務(wù)器和云服務(wù)提供商都支持Node.js的Web應(yīng)用。我們在這里說幾個,包括Google,Microsoft IIS,Heroku,Microsoft Azure,Amazon(AWS)等等。
以上就是個人總結(jié)的node.js如此深受歡迎的原因,如有遺漏,還請大家指正。
node.js還真是開發(fā)利器神器啊~
相關(guān)文章
Node.js定時任務(wù)之node-schedule使用詳解
這篇文章主要介紹了Node.js定時任務(wù)之node-schedule使用詳解,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-08-08Grunt針對靜態(tài)文件的壓縮,版本控制打包的實例講解
下面小編就為大家?guī)硪黄狦runt針對靜態(tài)文件的壓縮,版本控制打包的實例講解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-09-09nodejs 簡單實現(xiàn)動態(tài)html的方法
今天小編就為大家分享一篇nodejs 簡單實現(xiàn)動態(tài)html的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-05-05Nodejs進(jìn)階之服務(wù)端字符編解碼和亂碼處理
這篇文章主要介紹了Nodejs進(jìn)階之服務(wù)端字符編解碼和亂碼處理,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-09-09Node.js同時安裝多個版本及相關(guān)配置指南(簡單易操作)
在實際開發(fā)過程中我們可能需要安裝多個版本的 nodejs,下面這篇文章主要給大家介紹了關(guān)于Node.js同時安裝多個版本及相關(guān)配置的相關(guān)資料,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下2023-11-11