NodeJs概念入门

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

本文主要针对NodeJs的入门概念进行简单的解释。
了解一个新的概念或者技术,首先要着重于概念,一般可以分为这么几个套路
  1)NodeJs是用来做什么的?
  2)NodeJs的特点是什么,有哪些重要的概念,这些概念具体对应的是什么?
    那么我们首先来看NodeJs是用来做什么的?
        NodeJs的初衷是用来实现“旨在提供一种简单的构建可伸缩网络程序的方法”,简单点讲就是应对IO高并发的情况出现。
    其他语言能不能做到呢?当然可以,只不过基于JS的天性单线程,更加简单的实现了。
        那么NodeJs有哪些特点?
  最重要的特点:将所有的操作都做为事件来进行处理,每一个事件都可以触发相应的操作,具体来说,所有的事件都是基于EventEmitter类
那么NodeJs中重要的概念是哪些?

事件 ==》 EventEmitter
流 ==》 Stream
缓存 ==》 Buffer
那么事件的机制是什么?
EventLoop
事件循环机制
那么这六个阶段做了什么?
timer:用于执行settimeout、setinterval的事件
I/O callbacks:用于执行出错的事件
idle,prepare:内部操作
pool:轮询新的事件,node会在这里阻塞
check:执行setimmedate
close callback:关闭的回调
Stream
流,可以分为两个读流和写流,所有的操作都是基于这两个流,读事件和写事件会触发相应的操作,具体请看API
Buffer
BackPressure
众所周知,write《read速度,那么就会存在背压问题,那么这种情况怎么处理呢?不用担心,Node都帮你处理好了。具体看图吧。。。。
参考链接:
NodeJs是用来做什么的

猜你喜欢

转载自blog.csdn.net/Donspeng/article/details/78380079