Node.js是一个创建在Chrome v8 引擎上的javascript运行时环境javascript
异步事件驱动java
node.js使用回调函数的方式来处理阻塞事件,node.js维护一个线程池,当遇到阻塞事件时,就从线程池中取出一个线程来执行阻塞事件,而后执行回调函数,线程归还线程池。node
非阻塞IOc++
单线程npm
能够经过 child_process.fork(modulePath, args) API 实现多个线程windows
HTTP 在Node.js中是一等公民,Node.js很是适合Web应用浏览器
Google开源的高性能javascript引擎,用做解释和执行javascript安全
高性能的事件驱动程序库,对Windows和Unix的一些底层平台特性进行了封装服务器
提供了对系统底层访问的功能网络
Node.js 提供使用的API
胶水代码,将c/c++类库接口暴露给javascript
动态连接对象,用于在Node.js和javascript以及C/C++之间提供接口
Node安装目录
npm modules目录
断言测试
操做二进制流
动态连接对象,用于在Node.js和javascript以及C/C++之间提供接口
child_process模块提供了以与popen(3)类似但不彻底相同的方式生成子进程的功能。 该功能主要由child_process.spawn()函数提供
Node.js的单个实例在单个线程中运行。 为了利用多核系统,用户有时会想要启动一个Node.js进程的集群来处理负载。
Cluster 模块容许您轻松建立全部共享服务器端口的子进程
Node.js配有各类CLI选项。 这些选项会公开内置调试,执行脚本的多种方式以及其余有用的运行时选项。
控制台模块提供了一个简单的调试控制台,相似于Web浏览器提供的JavaScript控制台机制
加密模块提供加密功能,其包括用于OpenSSL的哈希,HMAC,加密,解密,签名和验证功能的一组包装器。
Node.js包括可经过基于TCP协议和内置调试客户端访问的进程外调试实用程序。 要使用它,启动带有调试参数的Node.js,后跟脚本的路径进行调试; 将显示提示,指示调试器成功启动
使用底层操做系统设施执行名称解析的功能
模块将被弃用。一旦替换API已经完成,该模块将被彻底弃用。
用做错误处理
Node.js事件API
文件I/OAPI,由在标准POSIX功能上的简单包装器提供
全部模块都提供这些对象。 这些对象中的一些实际上并不在全局范围内,而在模块范围内
Node.js Http接口,支持不少传统协议
HTTPS是TLS/SSL上的HTTP协议,在Node.js中单独使用一个模块来实现该协议
Node.js的简单模块加载系统
异步网络包装器,用于实现服务端和客户端的网络通讯的功能
OS模块提供了一些与操做系统相关的方法
提供文件或者路径处理的方法
提供Node.js的进程处理以及进程信息获取等API,Process是全局的,不须要使用require()加载
将被废弃,不建议使用
用于提供格式化和解析URL字符串的API
readline模块提供了从Readable流读取数据的接口
repl模块提供Read-Eval-Print-Loop(REPL)实现,该实现既能够做为独立程序使用,也能够包含在其余应用程序中
Stream 模块用于实现数据流处理的抽象接口,它提供了一个API,能够轻松构建流处理对象
提供API将buffer对象编码成字符串
定时器
tls模块提供了构建在OPENSSL上的传输层安全协议(TLS)和和安全套接层协议(SSL)
tty模块提供了tty.ReadStream和tty.WriteStream类
dgram模块提供UDP数据报套接字的实现
提供URL处理的API
主要提供内部程序使用的基本方法,可是也能够被外部访问
v8模块公开了特定于Node.js二进制内置的V8版本的API
vm模块提供用于在V8虚拟机上下文中编译和运行代码的API
zlib模块提供使用Gzip和Deflate / Inflate等形式压缩功能