nodejs概述

严格的说,nodejs是一个用于开发各种web服务器的开发工具,在nodejs服务器中运行的是v8 JavaScript脚本语言,可以被v8引擎解析,该引擎并不局限于在浏览器中运行。nodejs将其转用在了服务器中,并且提供了不同用途的API。

1、nodejs和其他服务器语言的区别

传统服务器语言如java、PHP等为每一个客户端连接创建一个新的线程,每个线程需要耗费约2MB内存,服务器内存的大小限制了最大连接数,想让web应用程序支持更多的用户,需要增加服务器的数量,而nodejs修改了客户端到服务器端的连接方法,它并不为每个客户端创建一个新的线程,而是为每个客户端连接触发一个在Nodejs内部进行处理的事件。因此nodejs可以同时处理几万个客户端的连接。

2、nodejs特点

1、如上所述,nodejs可以支持高并发。
2、非阻塞型i/o和事件环,nodejs只支持单线程,每一个时刻只能执行一个事件回调函数,当处理多个事件时,当事件A开始后还未返回结果时,nodejs可以开始处理其他的事件B,处理A事件的结果,并不影响事件B的执行,此为非阻塞,当A事件完成时,再调用A的回调函数,如此处理事件机制称为事件环机制。

3、REPL(交互式运行环境)

1、内部使用eval来评估表达式的值。如foo=“bar” ---->bar,var foo = "bar"--->undefined
2\、_来表示最近使用的表达式。

你可能感兴趣的:(nodejs概述)