Webstorm使用node.js后变得非常缓慢。

67

有人知道这个IDE的情况吗?我已经使用它一段时间了,最近它变得非常缓慢且有时无法响应。即使只是编辑一堆js文件,也会占用大量CPU。

可能性: 1.我的代码库越来越大... 2.我有几个监听器,当这些文件发生变化时,后台编译coffeescript和sass文件。

无论如何,我对这个IDE的速度非常惊讶(不好),从一个IDE的开发者那里期望更好的表现。

之前有人遇到过这种问题吗? 10x


3
最可能的问题来自本地的 node_modules 大小 - 索引庞大的 node_modules 文件夹可能需要一些时间。我们将尝试在下一个版本中优化 node_modules 解析 - 请关注 WEB-11419 和相关票务以获取更新。 - lena
我个人没有遇到任何问题(不使用coffeescript和其他编译器)。感觉这个问题应该向Webstorm支持而不是SO提出。 - WispyCloud
@llan Lewin - 嗯,我也曾经遇到过WebStorm的同样问题。它是我发现的最慢的编辑器。然后我开始使用Sublime Text 3。 - Dr. Piyush Dholariya
我使用Webstorm 2016.1开发一个ionic2/angular2应用程序。编辑html文件非常缓慢。而ts文件很快。虚拟机选项设置为使用2048m。我有8GB的内存。 - A.W.
1
和Guus一样--在一台8核16GB的机器上,几乎有30%的CPU使用率!这个项目是ionic2的简单示例应用程序! - Moos
我用WebStorm已经有10年了,现在它只是一个臃肿的软件,我被困在其中。 - Nikos
4个回答

78

有几个性能优化措施可以应用于Webstorm,以查看是否可以改善您的情况。当我和我的同事发现Webstorm变慢时,这些调整解决了我们所有的问题。

首先,请确保您的项目已配置为有效地利用webstorm资源,通过从项目中排除特定目录。这将确保包含的文件未在内存中索引,并且在执行诸如搜索文件或文件中的文本等功能时不会降低性能。一些例子是好的候选人要排除node_modules目录和编译代码目录。

如果仍然存在性能问题,请尝试以下操作:

如果您使用的是Windows,默认情况下您使用32位版本。导航到Webstorm目录(在程序文件中),您将看到webstorm64.exe,它将以64位模式运行Webstorm。(您可能需要自己安装适当的64位JDK。)

当您的项目包含超过10000个类时,默认的IntelliJ IDEA VM选项可能不是最优的,开发人员经常尝试更改默认选项以最小化IntelliJ IDEA挂起时间。

您可以尝试提高Webstorm的JVM内存限制。从IDE_HOME\bin\<product>[bits][.exe].vmoptions打开VM选项。最初尝试将XmsXmx内存值加倍。

请注意,非常大的Xmx和Xms值不是很好。在这种情况下,GarbageCollector必须一次处理大量内存,并导致显着的挂起。

有关配置JVM内存选项的更多信息,请参见:


2
谢谢。事实上,我正在运行默认的32位版本。 - Ilan lewin
3
以前它使用了128M内存!!! 我有8GB的内存。我把它增加到2048m。现在它运行得非常快。非常感谢。 - Sreevisakh
1
@AlexMills 听起来有点过头了,你真的想要为所有的节点模块启用语法高亮吗?你可以使用 https://www.jetbrains.com/webstorm/help/configuring-javascript-libraries.html 为特定的库定义语法高亮(以及其他功能)。 - Andrew
1
您不再需要修改安装文件夹 -> https://www.jetbrains.com/help/webstorm/2016.1/tuning-webstorm.html - ffffranklin
2
FYI,我已经向他们提交了一张工单,以解决64位32位的问题:https://youtrack.jetbrains.com/issue/WEB-24989 - B T
显示剩余8条评论

31

现在您可以通过UI完成它。

enter image description here

这是我的改变前后。垃圾回收器没有问题。只是将所有值乘以4。机器配置:20GB RAM、4GHz i7 CPU和SSD硬盘。使用默认设置时开始出现滞后,现在没有滞后了。

为了快速复制,将其粘贴为纯文本:

# custom WebStorm VM options
# Default:
# -Xms128m
# -Xmx750m
# -XX:ReservedCodeCacheSize=240m
# -XX:+UseCompressedOops

-Xms512m
-Xmx3000m
-XX:ReservedCodeCacheSize=960m
-XX:+UseCompressedOops

26
我曾经遇到过类似的情况。CPU使用率会飙升,而IDE则会出现延迟。请前往WebStorm首选项并尝试禁用您不需要的插件。
例如,如果您的项目使用SASS,则运行LESS插件有什么意义?同样,如果您的项目使用Git,则不需要具有CVS或Perforce集成。 禁用您不需要的插件 当WebStorm对我的项目文件进行索引时,CPU仍然会飙升,但我通常只是耐心等待。

1
这对我帮助很大,非常有用的答案! - Denes Papp

0
停止 TypeScript 文件的监视显著有所帮助(可以在 IDE 设置菜单和 tsconfig.json 中设置)。我认为一旦项目变得足够大,任何更改都会强制进行大规模重新编译。这不是理想情况,但对我有用,可能对其他人也有用。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接