Node.js简介与安装

来源:互联网 发布:网络布线教程 编辑:程序博客网 时间:2024/06/15 19:09

  Node.js简介与安装


  一、什么是Node.js

  Node.js是一项服务器技术,它的目标是“旨在提供一种简单的构建可伸缩网络程序的方法”。

  以前我们在使用Web服务器的时候,每个用户连接进来,服务器就需要进启一个进程或线程跟踪这个用户连接,所以服务器支持的并发连接数有一定限制。

  而Node.js采用了新的设计,使得采用Node.js编写的服务器可以支持数万个并发连接。


  Node.js的典型应用:
  1. RESTful API的Web服务
  提供RESTful API的Web服务器接收几个参数,解析它们,组合一个响应,并返回一个响应(通常是较少的文本)给用户。这是适合Node的理想情况,你可以使用Node搭建服务器以处理数万条连接。它不需要大量逻辑,本质上只是从数据库中查找一些值并将它们组成一个响应。由于响应是少量文本,入站请求也是少量的文本,因此流量不高,一台机器甚至也可以处理最繁忙的公司的Web服务需求。
  2. Twitter队列
  想像一下像Twitter这样的公司,它必须接收tweets(类似微博)并将其写入数据库。实际上,每秒几乎有数千条tweet到达,数据库不可能及时处理高峰时段所需的写入数量。Node成为这个问题的解决方案的重要一环。Node能处理数万条入站tweet。它能快速而又轻松地将它们写入一个内存队列,另一个单独进程可以将它们写入数据库。Node在这里的角色是迅速收集tweet,并将这个信息写入队列。


  Node.js的引擎

  没错,Node.js的引擎是JavaScript。也许你会很惊讶,JavaScript不是客户端的脚本语言吗?确实,以前我也没想过JS能够作为服务器端语言使用,而且跟Java并驾齐驱。

  Node.js使用的是V8 JavaScript引擎。V8 JavaScript引擎是Google用于其Chrome浏览器的底层JavaScript引擎。很少有人仔细考虑过JavaScript在客户机上是怎样被执行的?实际上,JavaScript引擎负责解释并执行代码。Google的V8引擎是一个用C++编写的超快解释器,运行效率比传统的JS解释器有了质的飞跃。该解释器还拥有另一个特征:您可以下载该引擎并将其嵌入任何应用程序,V8引擎并不仅限于在浏览器中运行。因此,Node使用Google编写的V8 JavaScript引擎,将其重新构建为服务器端的脚本语言。

  正是由于Node.js选择了JS语言作为服务端语言,所以JavaScript在实际开发中的重要性就急剧上升了,因为JavaScript可以通吃前后台了。


  由于JavaScript是事件驱动的语言,所以很适合构建服务器,当有用户请求进来时,相当于触发了一个事件,这时执行预设的回调函数。


  二、Node.js的安装

  进入Node.js的官网进行下载:https://nodejs.org/en/download/


  这里的LTS版本就是Long Term Support(长期支持版本),即稳定版。


  下载之后的安装很简单,Windows下,一路点“下一步”即可完成安装。

  安装好的目录如下:



  三、常用的Node.js命令

  1. node -v

  安装完后应检查一下PATH环境变量中是否已经包含了Node.js的安装目录。


  然后,打开程序组上的Node.js->Node.js command prompt(命令提示符),输入:

  node -v

  如果出现版本号,说明Node.js已经安装成功。


  2. npm命令

  Node.js有一个很强大的地方在于它可以安装各种第三方插件。Node.js作为一个服务器平台,可以安装各种插件,而且有很多JavaScript大牛持续地贡献各种插件。

  Node.js的插件管理很象Linux操作系统的RPM软件包安装,Linux中有rpm install命令可以安装软件包,在Node.js中也有npm install命令。

  npm install 插件名

  npm即Node Package Manager(Node.js包管理程序)。

  加上-g选项表示全局安装,全局安装将安装到统一目录下,并写入系统环境变量,因此可以在命令行的任何地方调用此插件。

  例如:npm install -g cordova


  由于npm安装插件时是从境外的服务器下载软件包,由于网络问题,一些插件可能会安装失败。淘宝团队在国内做了一个镜像,同步频率是10分钟。你可以使用下面的命令:

  npm install cnpm -g --registry=https://registry.npm.taobao.org

  这时就可以使用cnpm命令来替代npm命令下载插件了。


  3. 升级Node.js

  很多插件都对Node.js版本有要求,一般可以定期将Node.js升级到最新版本。

  你可以在网上搜一下,有一个程序叫gnvm,可以自动升级Node.js。它是一个可执行文件,下载后将它放在Node.js的安装目录下。


  升级命令:

  gnvm update latest

  升级完成后在安装目录下会出现另一个版本的Node.js:


  切换Node.js版本

  升级之后,只是下载了所需的软件,还需要执行一次切换版本命令:

  gnvm use 版本号(例如:8.3.0)

  切换后,再次输入node -v,就可以看到版本已经成功升级到8.3.0。