Node.js简介
1. 认识Web服务器端
1.1 什么是Web服务器
- 服务器(提供服务)指的就是一台安装特定的软件的公共计算机,用于专门用于提供特定的服务。
- 按照服务类型的不同,又划分为:Web 服务器、数据库服务器、文件服务器等等。
- Web 服务器,提供了 Web 服务器的计算机
- 常见的 Web 服务器软件:Apache、Nginx、IIS、Tomcat
- 常见的 Web 服务器端编程语言:Node.js、Java、PHP、ASP.net、Python、Ruby等等
- 客户端(使用服务)指的是在一次服务过程中使用这个服务的设备(网络端点)。
- 目前咱们最常见的客户端就是浏览器

服务器的划分:
- 1.按应用来分:有游戏服务器,网站服务器,数据库服务器,ftp服务器等。
- 2.防御级别来分:有无防、低防、高防服务器。
- 3.按地理位置来分:有国内和国外服务器
- 4.按构建技术来分:有物理服务器、云主机、vps,云主机和vps都属于虚拟机
- 5.按网络线路来分:有电信服务器、网通服务器、双线服务器、多线服务器、BGP服务器(壹基比小喻)
web(World Wide Web)即全球广域网,也称为万维网,它是一种基于超文本和HTTP的、全球性的、动态交互的、跨平台的分布式图形信息系统。
1.2 C/S与B/S结构
应用软件架构一般分为两类:
- B/S 架构:Browser(浏览器) ←→ Server(服务器),这种软件都是通过浏览器访问一个网站使用,服务器提供数据存储等服务。
C/S 架构:Client(客户端) ←→ Server(服务器),这种软件通过安装一个软件到电脑,然后使用,服务器提供数据存储等服务。

浏览器的执行过程
- 我们在浏览器地址栏中输入 www.baidu.com 是如何看到百度的?
- 用户打开浏览器
- 地址栏输入我们需要访问的网站网址(
URL) - 浏览器通过
DNS 服务器获取即将访问的网站IP 地址 - 浏览器发起一个对这个 IP地址的
请求 - 服务端监听指定的
端口的服务器软件接收到这个请求,进行相应的处理 - 服务端将处理完的结果返回给客户端浏览器(
响应) - 浏览器将服务端返回的结果呈现到界面上
- 我们在浏览器地址栏中输入 www.baidu.com 是如何看到百度的?
Web集群架构

2. Node.js 介绍
2.1 为什么要学 Node.js
- 大前端必备技能
- 为了更好的学习前端框架
- 未来我们使用的很多工具都是基于 Node.js
- Node.js 中学习的一些概念,在框架中相似或相同
- 进一步理解 Web 开发
- 增加职业竞争力

2.2 Node.js是什么
以下引自 Node.js 官网:
Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.
- 是 JavaScript 的,一种运行环境,构建于 Chrome V8 JavaScript 引擎之上。
简单的说 Node.js 就是运行在服务端的JavaScript
- 运行环境
- 能解析和执行 JavaScript 代码(严格来说应该是 ECMAScript 代码)
- Node 提供大量工具库,使得 JavaScript 语言与操作系统互动(比如读写文件、网络通信)
- 运行环境
为 JavaScript 提供了服务端编程的能力
- 文件 IO
- 网络 IO
Node.js 中的包管理器
npm,是全球最大的开源库的生态系统(有非常多的开源库可以使用)从技术角度它的能力和 Java、PHP、Python、Perl、Ruby 等服务端技术类似
2.3 Node.js特点
- 事件驱动
- 非阻塞 IO(异步) 模型
- 单线程
跨平台
相关参考
- Node.js 中文文档(非官方)
2.4 Node.js中的JavaScript
浏览器 JS 执行环境和 Node 执行环境的区别
- 没有 BOM、DOM
- ECMAScript
- Node.js 为 JavaScript 提供的服务器级别的 API
- 文件读写
- 网络通信
- http 服务器
3. 安装 Node 环境
版本说明
- LTS 长期支持版,适用于开发和生产环境
- Current 最新版,适用于体验测试
下载:
- 官方网址:https://nodejs.org/en/
- 中文网址:http://nodejs.cn/
- 下载网址:http://nodejs.cn/download/
安装:
- 一路 next 即可
确认是否安装成功
- 打开命令行,输入
node --version或者node -v。如果能看到类似于输出v12.18.2的版本号,则表示安装成功。 - 注意:如果是安装之前打开的命令行请在安装结束之后关闭重新打开再执行上述命令
- 打开命令行,输入