免责声明: 有这个以前的问题 。 由于在新的Node.js发布之前几个月才被问到 – 我再次提出这个问题。
我听说微软已经和Node.js联手,他们正在积极地合作。 我也为即将到来的应用程序在Node.js中创build了一个示例脚本,这在我的Windows上效果很好。
现在我有两个问题:
Node.js脚本能在所有Windows平台上正常工作吗? 我的应用程序将被许多用户在Windows机器上下载。 我是否正确select像node.js这样的新技术用于生产?
有没有办法阻止用户访问原始的JS代码?
Node.js严重依赖(文件系统)事件的异步调度。 因为在基于Unix的操作系统(Linux / OSX / etc)和Windows之间的体系结构之间存在明显的区别,直到node.js 0.4.x,Windows版本使用仿真方法来模拟Unix使用的事件机制。 node.js的实际功能在这上面就失去了,因为扩展性能比基于Unix的系统要糟糕。
从node.js 0.6.x开始(0.5.x是不稳定的分支),node.js的Windows分支使用本地IOCP,它提供了类似的性能。 此外,微软已经采用node.js作为iisnode版本0.6.x的IIS的本地模块。 在node.js中给了我一个非常坚实的感觉,但是我不知道现在有什么主要的产品可以运行它。
我正在使用iisnode在Windows服务器上运行几个Node.js站点。 我更喜欢以前安装到Ubuntu托管的设置。
只要你不需要编译模块(jsdom对symxtify的依赖),Node.exe运行良好。 我转移到iisnode和Node.exe的一个站点是一个完整的基于Express的站点,它有很多跨平台破损的机会,但是它的工作原理与只修改了几条与iisnode一起工作的线路相同。
我的意见是,Node 0.6.x已经可以在Windows上像在Linux和OS X上一样准备好了。