为什么Node.js会这么火呢?Node.js流行的原因


Posted in Javascript onDecember 01, 2014

Node.js是一项服务器技术,它用来构建和运行Web应用,这和ASP.NET,Ruby on Rails或Spring框架做的工作是类似 的。它使用JavaScript作为主要的开发语言,有一个自带的轻量级Web服务器,还有Node包管理(NPM)的大量插件,你就可以按照你自己的需 求来塑造Web应用,像添加MVC特性,加入Restful服务,OAuth或SSL安全性等等。

语言的重复使用

像ASP.NET或Spring这样的技术需要开发人员学习一门新的服务端语言,比如C#,VB.NET或者Java。而Node.js在服务端和客户端都是使用JavaScript,这意味着开发人员在各层上只需使用一门语言。

对于开发者易转型

有一个事实就是JavaScript是Web开发者们熟知的语言,大部分人都了解JavaScript或多少使用过它。所以说,一个Web开发人员从其他技术转型到Node.js是很简单的。

轻量级

Node.js使用的是事件驱动架构,这就是说在它上面做的每一件事,每一个独立的调用和操作,都是一系列的异步回调。这使得Node.js运行在 一个线程上,这一点和其它的Web技术是不同的,它们每个客户端的请求都会生成一个新的线程来处理。这也正是非阻塞I/O的本质所在。

支持对象数据库

在Node.js应用中使用像MongoDB这样的对象数据库简是十分常见的,MongoDB和传统的SQL数据库不同的是,它使用的是基于文档的模型而非关系型模型,它用的不是表,而是类似JSON这样的对象。这就很适合ORM的热爱者了。

受到IDE和代码编辑器的广泛支持

JavaScript已经存在相当长一段时间了,所以像Visual Studio,Eclipse这样的IDE都是支持JavaScript代码提示和高亮的,另外像NotePad++和Sublime Text之类的代码编辑器也同样支持这些。

可以随处托管服务

一些Web服务器和云服务提供商都支持Node.js的Web应用。我们在这里说几个,包括Google,Microsoft IIS,Heroku,Microsoft Azure,Amazon(AWS)等等。

以上就是个人总结的node.js如此深受欢迎的原因,如有遗漏,还请大家指正。

node.js还真是开发利器神器啊~

Javascript 相关文章推荐
js鼠标点击事件在各个浏览器中的写法及Event对象属性介绍
Jan 24 Javascript
关于jQuery对象数据缓存Cache原理以及jQuery.data详解
Apr 07 Javascript
js改变embed标签src值的方法
Apr 10 Javascript
JQuery控制Radio选中方法分析
May 29 Javascript
前端js实现文件的断点续传 后端PHP文件接收
Oct 14 Javascript
js+css3实现旋转效果
Jan 20 Javascript
VUE在for循环里面根据内容值动态的加入class值的方法
Aug 12 Javascript
vue3.0 CLI - 2.6 - 组件的复用入门教程
Sep 14 Javascript
利用d3.js力导布局绘制资源拓扑图实例教程
Jan 08 Javascript
Vue 利用指令实现禁止反复发送请求的两种方法
Sep 15 Javascript
微信小程序登陆注册功能的实现代码
Dec 10 Javascript
用jQuery实现抽奖程序
Apr 12 jQuery
Javascript学习指南
Dec 01 #Javascript
Javascript模块化编程详解
Dec 01 #Javascript
浅谈Javascript中深复制
Dec 01 #Javascript
使用JS+plupload直接批量上传图片到又拍云
Dec 01 #Javascript
关于javascript模块加载技术的一些思考
Nov 28 #Javascript
jQuery实现Twitter的自动文字补齐特效
Nov 28 #Javascript
关于编写性能高效的javascript事件的技术
Nov 28 #Javascript
You might like
基于PHP 面向对象之成员方法详解
2013/05/04 PHP
php metaphone()函数及php localeconv() 函数实例解析
2016/05/15 PHP
利用PHP自动生成印有用户信息的名片
2016/08/01 PHP
如何重写Laravel异常处理类详解
2020/12/20 PHP
jQuery.extend 函数的详细用法
2012/06/27 Javascript
node.js中的fs.rmdir方法使用说明
2014/12/16 Javascript
JQuery插件jcarousellite的参数中文说明
2015/05/11 Javascript
JavaScript清空数组元素的两种方法简单比较
2015/07/10 Javascript
jQuery实现指定内容滚动同时左侧或其它地方不滚动的方法
2015/08/08 Javascript
JS+CSS实现大气的黑色首页导航菜单效果代码
2015/09/10 Javascript
Javascript小技能总结(推荐)
2016/06/02 Javascript
javascript 数据存储的常用函数总结
2017/06/01 Javascript
vue.js的手脚架vue-cli项目搭建的步骤
2017/08/30 Javascript
静态页面实现 include 引入公用代码的示例
2017/09/25 Javascript
原生nodejs使用websocket代码分享
2018/04/07 NodeJs
快速解决bootstrap下拉菜单无法隐藏的问题
2018/08/10 Javascript
js中console在一行内打印字符串和对象的方法
2019/09/10 Javascript
JS+CSS实现3D切割轮播图
2020/03/21 Javascript
Vue $emit()不能触发父组件方法的原因及解决
2020/07/28 Javascript
[58:23]LGD vs TNC 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/16 DOTA
在Mac OS上部署Nginx和FastCGI以及Flask框架的教程
2015/05/02 Python
Python3的介绍、安装和命令行的认识(推荐)
2018/10/20 Python
解决每次打开pycharm直接进入项目的问题
2018/10/28 Python
python实现QQ邮箱/163邮箱的邮件发送
2019/01/22 Python
python 3.7.4 安装 opencv的教程
2019/10/10 Python
Python制作一个仿QQ办公版的图形登录界面
2020/09/22 Python
移动端HTML5开发神器之vconsole详解
2020/12/15 HTML / CSS
英国最大的电子零件及配件零售商:Partmaster
2017/04/24 全球购物
将时尚融入珠宝:Adornmonde
2019/10/17 全球购物
西班牙在线光学:Visual-Click
2020/06/22 全球购物
暑假家长评语大全
2014/04/17 职场文书
论文致谢词范文
2015/05/14 职场文书
基于Redis延迟队列的实现代码
2021/05/13 Redis
Python基础学习之奇异的GUI对话框
2021/05/27 Python
Win11怎样将锁屏账户头像图片改成动画视频
2021/11/21 数码科技
netty 实现tomcat的示例代码
2022/06/05 Servers