当我重新启动Mac时,启动Node.js应用程序非常快捷。之后,在Mac开启几个小时后,它变得非常慢。
我已经使用process.hrtime()
为各种事情计时,似乎所有require
调用需要时间,即加载依赖项。加载完所有内容后,我的应用程序运行速度相当快。
差异极端:刚刚重新启动后,应用程序可能需要300毫秒来完成require
次呼叫,一旦它开启几个小时,它需要30秒。
导致这种情况的原因是什么?
答案 0 :(得分:0)
由于执行require
的速度与磁盘加载性能完全相关。
因此,我认为HDD / SSD或您的项目所属的很可能导致这种情况发生。
重新启动后它正常工作,所以可能有一些后台软件(如病毒扫描或自动下载程序)正在进行IO阻止
最好在发生问题时检查CPU / RAM / HDD状态,看看如果将项目移动到USB闪存驱动器或外置硬盘中会发生什么