2

如果这不是发布此问题的正确位置或与之前提出的问题相似,我深表歉意。

我正在研究如何在我想开始的 C++ 项目上放置 Web 界面。我遇到了 Node.js 并检查了一些使用 V8 引擎的插件。

我的想法是将业务逻辑(DB(sqlite)、CRM、CMS 等)路由到 C++ 后端,并在 Node.js 中处理 websocket 连接、表单验证等内容。

JXcore 在纸面上有非常吸引人的规范,所以我非常有兴趣尝试一下,但我不确定看到 JXcore 未来的目标是从 V8 迁移到 LLVM,我的插件会受到怎样的影响。希望有可用的选项将 JS 与 C++ 连接起来。

因此,基于上述内容,我有以下可用选项:

  1. 在 Node 中做所有事情(没有 C++ 插件)
  2. 在没有多线程的情况下使用 JXcore 或 Node 和 c++ 插件
  3. 使用 JXcore 或 Node 并在我的 C++ 插件中使用 libuv 实现多线程
  4. 在 JXcore 中做所有事情(没有 C++ 插件)

在您看来,就性能而言,上述哪一个选项会是更好的选择?我也将不胜感激上述任何替代选择。

4

1 回答 1

1

如果您选择 JXcore 路径,我认为您不需要 C++ 插件来提高性能(尤其是在您的情况下)。首先,V8 非常快,并且使用多线程您已经拥有了整个 CPU 容量。第二个也是最重要的部分是,当 JXcore 将 V8 更新为 LLVM 时,您的 Javascript 源代码将被编译为原生代码。

正如从这里提到的,他们已经嵌入(beta2 和更高版本)一些流行的 c++ 插件(多线程)并发布了一个包装头文件,以便轻松开发多线程友好的 c++ 插件。

有关JXcore的更多信息

于 2014-03-24T14:14:20.027 回答