【问题标题】:toggle node-dev for certain requires为某些需要切换 node-dev
【发布时间】:2013-01-03 04:11:53
【问题描述】:

有没有办法使用 node-dev 或类似的方法来切换仅针对某些文件重新启动 nodejs?

我看过,似乎 require.extensions 是一个包含要重新启动的扩展的对象,尽管删除它似乎没有任何作用。

我想要的是能够像往常一样使用node-dev,但需要某些文件而无需重新启动,因此我可以手动观看它们并重新加载它们而无需重新启动所有内容。

【问题讨论】:

  • 我现在用supervisor,只看某个目录。

标签: node.js watch fs node-dev


【解决方案1】:

热(重新)加载模块是一个烫手山芋,至少可以这么说。模块假定当它们被加载时,它们是在一个干净的环境中完成的,而热加载会改变这一点。它为各种可怕的错误打开了大门,例如内存泄漏和损坏的内存指针,老实说,我认为不值得麻烦。 Here's a similar question with a good answer.

与主题非常相关,我目前正在从事的项目之一:overseer

它是一个实验性的集群管理器,它封装了您的工作人员,让您能够监视文件系统更改并滚动重新启动工作人员(一个接一个地重新启动它们),因此没有经历过的停机时间。

但是,目前无法将客户端附加到特定的工作人员,因此在最坏的情况下,客户端将处理运行不同版本应用的两个或更多工作人员。不是最理想的情况:)

【讨论】:

  • 我不关心模块所做的假设,因为我要重新加载的大部分内容都是我自己的 js 文件,这些文件并不庞大。无论如何,就像我评论的那样,我使用主管只监控我的实际模块和真正根深蒂固的文件,而让我的其他要求免费被要求多次。
猜你喜欢
  • 2022-09-24
  • 2013-11-25
  • 1970-01-01
  • 2022-01-06
  • 2020-02-29
  • 2021-07-29
  • 2013-03-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多