关注 Node.js 的 C++ 移植版 node.native

Node.js 逐渐受到社区的广泛关注,最近 Node.js 的 C++ 移植版 node.native 也悄然出现。node.native 遵循 C++11 语言,目前还处于紧张的开发阶段,没有正式可靠的版本。

采用 node.native 开发 Web 应用,一如 Node.js 的风格一样简洁和强大。以 Web 服务器为例,node.native 的实现代码如下:

 

#include <iostream>
#include <native/native.h>
using namespace native::http; 

int main() {
    http server;
    if(!server.listen("0.0.0.0", 8080, [](request& req, response& res) {
        res.set_status(200);
        res.set_header("Content-Type", "text/plain");
        res.end("C++ FTW\n");
    })) return 1; // Failed to run server. 

    std::cout << "Server running at http://0.0.0.0:8080/" << std::endl;
    return native::run();
}

而采用原装 Node.js 实现的代码如下:

var http = require('http');
http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Hello World\n');
}).listen(1337, "127.0.0.1");
console.log('Server running at http://127.0.0.1:1337/'); 

为何 node.native 项目值得关注呢? devthought 网站列举了三条理由:

  1. C++ 语言增加了一些提高语言可用性的特性。特别是在匿名函数的支持,在 node.native 项目中应用广泛。
  2. 采用 C++ 语言可以更方便地与现有的 C/C++ 函数库交互。
  3. 不少公司基于性能的考虑,采用 C++ 编写 Web 应用程序和服务器。

除此之外, devthought 网站还针对 Node.js、LuaJIT 和 C++(node.native)三者做了一个基本的性能基准测试,结果是node.native 最佳,测试结果比Node.js 快80%。当然这只是一个粗略的评估,鉴于node.native 版本还不稳定,在得到精确的结论之前,我们还需要做严格的基准测试。

Node.js 社区最近也有些变化,Node.js 创始人 Ryan Dahl宣布 Isaac Schlueter 将接替自己的位置,而自己将转而搞其他研究项目。而微软则兑现了与 Joyent 的合作承诺,发布了支持 Node.js 的 Windows Azure SDK,Azure Node Package Manager (NPM) 模块允许开发人员在任何环境中使用 Windows Azure 存储服务来部署 Node 应用程序,还可以使用最新集成的 Cloud9 IDE 在 Azure 云端部署代码。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值