Node.js入门——关键概念2

一、Node.js如何实现非阻塞

Node.js入门——关键概念2_第1张图片

Node.js 异步编程的直接体现就是回调。

异步编程依托于回调来实现,但不能说使用了回调后程序就异步化了。

回调函数在完成任务后就会被调用,Node 使用了大量的回调函数,Node 所有 API 都支持回调函数。

例如,我们可以一边读取文件,一边执行其他命令,在文件读取完成后,我们将文件内容作为回调函数的参数返回。这样在执行代码时就没有阻塞或等待文件 I/O 操作。这就大大提高了 Node.js 的性能,可以处理大量的并发请求。

二、服务器处理数据流程

Node.js入门——关键概念2_第2张图片

https://www.cnblogs.com/binyue/p/3600121.html

三、NPM

NPM是随同NodeJS一起安装的包管理工具,能解决NodeJS代码部署上的很多问题,常见的使用场景有以下几种:

允许用户从NPM服务器下载别人编写的第三方包到本地使用。

允许用户从NPM服务器下载并安装别人编写的命令行程序到本地使用。

允许用户将自己编写的包或命令行程序上传到NPM服务器供别人使用。

由于新版的nodejs已经集成了npm,所以之前npm也一并安装好了。同样可以通过输入 "npm -v" 来测试是否成功安装。命令如下,出现版本提示表示安装成功:

http://www.runoob.com/nodejs/nodejs-npm.html

类似于python的pip

四、NPM安装module的位置

为了便于管理,将所有的Nodejs的module安装到Nodejs的目录位置,以便于共用

Node.js入门——关键概念2_第3张图片
报错

本来想省事,将formidable这个module安装到Nodejs的安装包,结果NPM也不能用,重装之后再安装到项目的根目录下。

五、硬编码&软编码

举个例子,比如说你做个软件,他有菜单栏,你如果把菜单的标题全部写在代码里,那如果现在要换英文的,你就不得不改变代码。

现在换一种方式,你把菜单标题全部写在一个文本里,比如叫title.txt,现在你要英文,那么只要把title.txt里面相对应的值换成英文就可以了。

不用在去该代码本身。

这就是 使用与配置相分离的概念

还有比如面向接口编程的概念,你可以去网上查,这都可以减少硬编码带来的后期维护。

来源:请问什么叫硬编码,它和普通编码有什么区别?

六、服务器假死

看到很多次这个概念,以为是什么特别厉害的东西,查了一下,没有专业的定义,之后才发现服务器假死是服务器反应速度特别慢,很长时间之后才能反应。

Node.js入门——关键概念2_第4张图片
https://zhidao.baidu.com/question/245479579992295924.html

你可能感兴趣的:(Node.js入门——关键概念2)