谷歌Chrome的本机客户端即将发布。 http://blog.chromium.org/2011/02/native-client-getting-ready-for-takeoff.html 这是否允许node.js在浏览器中运行,使分布式应用程序能够相互通信而无需通过服务器?
谷歌Chrome的本机客户端即将发布。 http://blog.chromium.org/2011/02/native-client-getting-ready-for-takeoff.html 这是否允许node.js在浏览器中运行,使分布式应用程序能够相互通信而无需通过服务器?
node.js不是纯粹的Javascript代码。它的一部分用C ++编写,所以这不太可能。
分布式通信有几种可能性。一种是使用浏览器中的Websockets api与其他浏览器进行通信。另一个是在与浏览器相同的机器上将node.js作为单独的服务器进程运行。
第二个是构建分布式应用程序的更好选择,因为它减少了对浏览器的依赖。 node.js的0.5.0pre版本现在可以在Cygwin上构建好,并且可以将Cygwin的基本组件捆绑为独立的二进制文件以分发给Windows客户端。 旧版本的node.js曾经以这种方式分发。
node.js不是纯粹的Javascript代码。它的一部分用C ++编写,所以这不太可能。
分布式通信有几种可能性。一种是使用浏览器中的Websockets api与其他浏览器进行通信。另一个是在与浏览器相同的机器上将node.js作为单独的服务器进程运行。
第二个是构建分布式应用程序的更好选择,因为它减少了对浏览器的依赖。 node.js的0.5.0pre版本现在可以在Cygwin上构建好,并且可以将Cygwin的基本组件捆绑为独立的二进制文件以分发给Windows客户端。 旧版本的node.js曾经以这种方式分发。
如今有几种解决方案允许您在chrome中运行一些Node模块。看看这些链接:
节点的WebKit 是基于Chromium和node.js的应用运行时。
节点chromify,Chrome中的Node.js.
屏幕投射 来自谷歌关于Chrome打包应用程序中的NodeJS。
截至今天,Node.js不会在NaCl中运行,但最终可能会运行。 Node使用V8 JavaScript引擎来执行代码。目前,没有可靠的V8发动机端口将在NaCl内运行。
根据Brad Chen 2014年1月28日的评论,在线程中“有人尝试将Blink和V8移植到Native Client吗?”:
V8已经移植到Native Client,虽然端口使用了 让V8生成ARM指令然后使用a的令人讨厌的技巧 便携式ARM解释器,以避免端口V8代码生成器 到NaCl。你应该能够通过检查V8源来观察这一点 并遵循使用目标的标准构建/测试说明 nacl_ia32或nacl_x64。
https://groups.google.com/d/msg/native-client-discuss/Xw5yCe3Ubwc/fgm6M092DXwJ
考虑到V8已经能够在NaCl下运行,尽管有不可靠的黑客,但可以合理地假设Node最终能够在NaCl中运行。我意识到你的问题现在已经有三年了,但我认为我提供了一个更新的答案,因为在浏览器中运行本机代码(甚至是OpenGL代码)现在已成为现实。
您无法在浏览器中运行Node.js.
但是,如果要进行P2P连接,则可以在浏览器中安装最新版本的Flash(Flash 10)。在最新版本中,他们介绍了 RTMFP 让你在不通过服务器的情况下进行P2P连接。如果你想在Javascript中使用它,你可以建立一个桥梁,或者你可以看一看 我最近开始的一个项目 这正是如此。