NodeJs 热更新 思路的总结

一般开发中常用的是基本重启的机制,类似的有 PM2node-Devnodemon...

先罗列一下网上的资源

http://fex.baidu.com/blog/2015/05/nodejs-hot-swapping/

Node.js 中也有与code_server类似的模块,即 require 体系,因此 Erlang 的做法应该也可以在 Node.js 上做一些尝试。通过了解 Erlang 的做法,我们可以大概的总结出在 Node.js 中解决代码热更新的关键问题点

  • 如何更新模块代码
  • 如何使用新模块处理请求
  • 如何释放老模块的资源

依次从三个方面解决更新的问题,在 ThinkJs中也有类似的情况.

TIP:不过由于 Node.js 本身缺乏对有效的留存对象的扫描机制,因此并不能100%的消除类似 setInterval 导致的老模块的资源无法释放的问题。也是由于这样的局限性

https://segmentfault.com/a/1190000003888845

基于 webpack 代码热替换.需要打包代码运行的...内容自己看板.

http://www.jianshu.com/p/fe53fdb969b0

使用chokidar监视目录,也是基于 fs.watch 检测的

  • chokidar是一个小巧的文件监视库, 它可以获取到目录中文件的改动/新增/删除等事件.

你可能感兴趣的:(NodeJs 热更新 思路的总结)