选择一个具有纯 js 与C++ 的Node.js库,并在实现上添加



选择纯js库而不是具有一些C++代码的库的优缺点是什么?例如,时区-JS(纯JS)在节点时间(cpp 插件)上具有时区支持的日期。

PS:应用程序需要托管在Heroku中

谢谢

假设库在功能上相似,我可以想到几个优点和缺点:

C++优点

  • 通常比纯JS实现更快(这可能并不总是正确的 - 始终测试自己)
  • 能够在线程池中异步执行 CPU 密集型工作

C++缺点

  • 可能无法在所有平台上编译,通常发生在插件需要一些第三方库时
  • 可能更难调试/修复问题(取决于您在 C++/V8 方面的专业水平)

如果您希望使用 C++ 插件,但担心它无法在 Heroku 上运行,请创建一个使用它的小型测试应用程序并部署它。如果你更喜欢使用JS库,但担心速度,你真的需要做你自己的实际性能测试,看看它是否真的是一个问题。

全 Javascript 解决方案更易于维护和部署。

在以下情况下,可以使用C++模块代替:

  • 没有Javascript库可以完成你想要完成的事情。
  • 在Javascript中,服务器的这一部分是CPU约束的瓶颈。通常不是这种情况,但媒体处理等方案除外。毕竟,Node.js的设计是基于服务器进程花费大部分时间等待的假设。

由于node-time不是CPU密集型的,并且存在Javascript替代方案,因此我推荐更简单的解决方案,在这种情况下是timezone-js。

相关内容

  • 没有找到相关文章