Node.js 研发团队发布了node.js v0.10 版本,它是个基于Javascript、用于构建高性能异步服务器的平台。该版本主要更新如下:更易于使用的数据流处理模块,通过域更好地处理错误,此外还带来了性能方面的提升。该团队还宣布在v0.10 之后、v1.0 之前还会发布一个更稳定版本v0.12。
数据流是node.js 的核心部分,它在v0.10 版本中经历了重大改动。数据流为任意类型的可读/ 可写数据流提供了一套公共接口,该抽象接口不需要关心数据流背后是文件,还是运行的进程或是socket。在v0.10 以前的版本中,数据包是以数据事件的方式发布,当打开数据流的时候该数据事件就会立马被触发。数据包丢失是个常见问题,这是因为这些事件在程序启动数据事件监听之前就到达了。虽然v0.10 版本还有个向后兼容模式,其表现行为与之相同,但推荐监听可读事件,一旦该事件触发,需要显式调用.read() 方法来获取缓存的数据。这样一来,数据包就不那么容易丢失了。
在node.js v0.8 之前的版本中,未捕获的异常默认会导致整个服务器进程崩溃。要避免这个问题并对未捕获异常的行为采取更多的控制,node.js v0.8 版本引入了实验性版本的域这个概念。域是一种将崩溃问题局部化的机制。例如,node.js 能够为每个HTTP 请求创建一个域。如果该HTTP 请求的域范围内有任何代码崩溃了,问题只会局限在该域中,不会导致整个服务器进程崩溃,因而能够将崩溃只局限在单个HTTP 请求中。在v0.10 版本中,域的状态已经由“实验性”升至“不稳定”,修复了各种边界条件软件缺陷,还提供了更丰富的调试信息。
在过去的一年中,node.js 社区取得了显著的增长,企业对这项技术也越来越感兴趣。例如 The Node Firm 和 StrongLoop 等公司已经提供了有偿的 node.js 技术支持,培训以及咨询服务。StrongLoop 还发布了StrongLoop Node beta 版本,它全面支持node.js,包含各式各样流行的模块,它遵循了和Scala 社区中 Typesafe 类似的模式。
官方的 node.js v0.10 的预构建二进制文件已经提供下载,支持目前所有主流操作系统,包括Windows、Mac、Linux 以及Solaris。当然了,作为开源项目的node.js,其源代码也已经公布。
查看英文原文: Node.js 0.10 Released
评论