node的组成有:1、“v8引擎”,是javascript解释器,它负责解析和执行javascript代码;2、“本地模块”,集成了众多高性能的开源库,使用“c/c ”编写,从底层决定了node功能的强弱;3、“标准库”。
本教程操作环境:windows7系统、nodejs 12.19.0版,dell g3电脑。
node.js发布于2009年5月,由ryan dahl开发,是一个基于chrome v8引擎的javascript运行环境,使用了一个事件驱动、非阻塞式i/o模型,让javascript 运行在服务端的开发平台,它让javascript成为与php、python、perl、ruby等服务端语言平起平坐的脚本语言。
在 node.js 之前,javascript 只能运行在浏览器中,作为网页脚本使用,为网页添加一些特效,或者和服务器进行通信。有了 node.js 以后,javascript 就可以脱离浏览器,像其它编程语言一样直接在计算机上使用,想干什么就干什么,再也不受浏览器的限制了。
node.js 的组成
node.js主要由 v8 引擎、标准库和本地模块组成,尤其是本地模块的多少,从底层决定了 node.js 功能的强弱。
1) v8 引擎
v8 引擎就是 javascript 解释器,它负责解析和执行 javascript 代码。
v8 引擎借鉴了 java 虚拟机和 c 编译器的众多技术,它将 javascript 代码直接编译成原生机器码,并且使用了缓存机制来提高性能,这使得 javascript 的运行速度可以媲美二进制程序。
2) 本地模块
node.js 集成了众多高性能的开源库,它们使用 c/c 语言实现,比如:
模块说明libuv一个跨平台的、基于事件驱动的异步 i/o 库。但是 libuv 不仅限于 i/o,它还提供了进程管理、线程池、信号处理、定时器等其它功能。
linux 中一切皆文件,这里的 i/o 不仅仅包括文件读写,还包括数据库读写、网络通信(socket)等。nmpnode.js 包管理器,可以下载包、安装包、卸载包、更新包、上传包等。http_parser一款由c语言编写的轻量级 http 解析器,用以支持 web 应用开发。zlib工业级的数据压缩/解压模块,nodejs 借助 zlib 来创建同步、异步或者流式的压缩/解压接口。openssl该模块提供了经过严密测试的许多加密/解密功能,现代 web 依赖这些功能来实现安全性,比如 ssl 协议和 https 协议。c-ares异步 dns 查询和解析库。
node.js 直接在计算机上运行 javascript 代码,并且要赋予 javascript 强大的能力,所以它的本地模块和浏览器中的运行时有很多大区别,甚至说几乎没有什么关联。node.js 几乎完全抛弃了浏览器,自己从头构建了一套全新的 javascript 运行时。
3) 标准库
本地模块使用 c/c 编写,而 node.js 面向 javascript 开发人员,所以必须要封装本地模块的 c/c 接口,提供一套优雅的 javascript 接口给开发人员,并且要保持接口在不同平台(操作系统)上的一致性。
这套 javascript 接口,就是 node.js 标准库。标准库是否优雅和强大,决定了 node.js 的易用性,直接影响 node.js 的市场表现。
更多node相关知识,请访问:nodejs 教程!!
购买com域名需要实名认证吗云主机和云服务器有区别吗阿里云服务器配置java环境你好,麻烦复核一下是否正常?使用香港VPS需要注意哪些地方多个域名批量购买ssl证书的方法和价格vps服务器和云服务器的区别电脑用Second copy软件备份数据的方法