Node.js介绍及安装

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/oscar999/article/details/84306324

Node.js 是什么

  • Node.js 是一个Javascript运行环境(Runtime Enviroment)。后端程序员如果理解这个有障碍的话, 可以想想JRE。
  • Node.js 基于Google的V8引擎。实质是对Chrome V8引擎进行了封装。
  • Node.js 是运行在服务端的 JavaScript。

Node.js 发布于2009年5月,由Ryan Dahl开发。

Node.js VS JQuery、ExtJS

完全没有可比性, 不是一个类型的概念。Node.js不是JavaScript的Framework, 也不是前端的库。

如果实在要拿个来比的话, 可以与JRE(Java Runtime Enviroment)来比较,Node.js让 JavaScript 成为与PHP、Python、Perl、Ruby 等服务端语言平起平坐的脚本语言

Node.js 的出现及应用场景

线程与线程阻塞

看一下线程的定义:可以独立运行的最小的CPU单位, 可以在一个进程里并发运行, 共享该进程下的内存地址空间。
注意,线程是共享内存空间的,如果多个线程用到同一个空间的变量时, 则先到显得,后到等待, 也就是加入到阻塞排队序列,也就是常说的线程阻塞。

一般的服务器, 比如Apache的服务器就会出现以上阻塞的状况。

Node.js是怎么做的?

  • 单进程,单线程
  • 异步I/O
    也就是说:通过异步回调的方式, 不需要实时等待执行结果的返回。
    NodeJS的工作原理其实就是事件循环。可以说每一条NodeJS的逻辑都是写在回调函数里面的,而回调函数都是有返回之后才异步执行的!

Java等后端语言通过子线程也可以实现并行请求,Node.js 看起来更自然。

NodeJS处理并发的能力强,但处理计算和逻辑的能力反而很弱,通过异步I/O,可以实现对高并发的高性能处理。
####适用场景

  1. RESTful API
  2. 前后端分离的Web应用
  3. 大量 Ajax请求的应用

Node.js 优缺点

优点:

  1. 高并发
  2. 适合I/O密集应用

缺点:

1.不适合CPU密集型应用
2. 因为单进程单线程,不能充分利用CPU
3. 可靠性低。
这个缺点可以结合Nngix反向代理和使用cluster模块改善
4.开源库尚未成熟
5.Debug不方便

下载安装

官方网站: https://nodejs.org/en/
有Windows 版本也有linux 版本的。
Windows版本下载之后点击安装一直next 就可以了。以下介绍一下Windows下的安装:

  1. 下载完成后用ftp上传到Linux任意文件夹。我的是/usr/local。进入到此文件夹。
cd /usr/local
  1. 解压
tar xf node-v8.3.0-linux-x64.tar.xz

3.进入解压目录,设置node和npm为全局变量

#ln -s /home/chuan/chuansoft/node-v8.3.0-linux-x64/bin/node /usr/local/bin/node

#ln -s /home/chuan/chuansoft/node-v8.3.0-linux-x64/bin/npm /usr/local/bin/npm

5.测试安装结果,命令行执行:

#node -v
#npm -v

猜你喜欢

转载自blog.csdn.net/oscar999/article/details/84306324
今日推荐