nodejs是什么
nodejs官网(nodejs.org)上的定义:
Node.js® is a JavaScript runtime built on Chrome’s V8 JavaScript engine. Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient. Node.js’ package ecosystem, npm, is the largest ecosystem of open source libraries in the world.
翻译过来:Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运转环境。
Node.js 使用了一个事宜驱动、非壅塞式 I/O 的模子,使其轻量又高效。
Node.js 的包管理器 npm,是环球最大的开源库生态系统。
从定义中,我们能够晓得nodejs与其他编程言语的一些差别之处:
1.起首nodejs不是一门言语,其是一个基于V8的JS运转平台;与php、jsp等既是言语也是平台差别。
2.与php、jsp等言语差别,nodejs不必依靠apache、nginx等效劳器软件,nodejs也能够供应种种web效劳(http效劳器等)。
3.nodejs的头脑:消费最小的硬件本钱,最求更高的并发、更好的机能。
nodejs的特征(非常重要):
1.单线程
2.事宜驱动(事宜轮回)
3.非壅塞I/O(异步I/O)
所谓nodejs的特征,就是nodejs是如何处理web效劳器高机能的题目。
下一节,最先讲单线程特征。