在编译Node.js的源码是,看到Node.js依赖的包包括
cares【c-ares】
c-ares is a C library for asynchronous DNS requests (including name resolves)
C89 compatibility, MIT licensed, builds for and runs on POSIX, Windows, Netware, Android and many more operating systems.
http_parser【C语言编写的http解析器】
This is a parser for HTTP messages written in C,只有3个文件,一个测试c
npm
作为node.js的模块管理工具,可以等同如同 RubyGems 对于 Ruby 开发者和 Maven 对于 Java 开发者的重要性
可以参考
http://www.infoq.com/cn/articles/msh-using-npm-manage-node.js-dependence
openssl
为网络通信提供安全及数据完整性的一种安全协议,囊括了主要的密码算法、常用的密钥和证书封装管理功能以及SSL协议,
并提供了丰富的应用程序供测试或其它目的使用
uv
libuv is a new platform layer for Node. Its purpose is to abstract IOCP on Windows and epoll/kqueue/event ports/etc. on Unix systems. We intend to
eventually contain all platform differences in this library
作为Node的平台层,抽象IOCP和epoll/kqueue/event ports,在该库中抽象不同操作系统的特性;Nginx所依赖的就是epoll/kqueue
v8 ----V8 Javascipt引擎
zlib
zlib是提供数据压缩用的函式库,仅支持一个LZ77的变种算法,DEFLATE的算法
从Node.js所依赖的包可以看出,node.js的成功也是建立在开源库的基础之上,站在巨人的肩膀上,才能够看的更远,的确如此;
任重致远,继续努力