简介
Node.js是一个基于Google所开发的浏览器Chrome V8引擎的JavaScript运行环境。
Node.js使用多种先进的技术,其中包括事件驱动和非阻塞式I/O模型,使其轻量又高效,受到众多开发者的追捧。
简单来说,Node.js就是运行在服务端的JavaScript,可以稳定地在各种平台下运行,包括Linux、Windows、MaC OSX、SunOS和FreeBSD等众多平台。
Node.js v10的特点
1.事件驱动
充分利用系统资源,执行代码无需阻塞等待某种操作完成,有限的资源可以用于其他任务。
2.异步、非阻塞I/O
3.性能出众
Node.js在设计上以单进程、单线程模式运行。
事件驱动机制是Node.js通过内部单线程高效率地维护事件循环队列来实现的,没有多线程的资源占用和上下文切换。
4.单线程
Node.js和大名鼎鼎的Nginx一样,都是以单线程为基础的。这正是Node.js保持轻量级和高性能的关键。
这里的单线程是指主线程为“单线程”,所有阻塞的部分交给一个线程池处理,然后这个主线程通过一个队列跟线程池协作。我们写的JS代码部分不用再关心线程问题,代码也主要由一堆callback回调构成,然后主线程在循环过程中适时调用这些代码。
资源分享
1.Node.js官网
2.CNode社区
3.全栈技术社区