V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
kisnows
V2EX  ›  问与答

这么好的配置都带不动 WebStorm 了,真是不能理解了

  •  
  •   kisnows · 2016-05-29 21:16:01 +08:00 · 9867 次点击
    这是一个创建于 3135 天前的主题,其中的信息可能已经有所发展或是发生改变。

    台式机 i7-6700k + 16G 内存加上 SSD 的配置,打开一个比较大的项目,直接卡的不能自理。

    按理说这不应该啊!

    第 1 条附言  ·  2016-05-30 20:09:05 +08:00

    使用 64 位的程序,并把内存设置到 2G 以后,完美解决。 之前不知道默认使用的是 32 位的程序,导致项目稍微一大就不行了。 配置如下

    -Xms512m
    -Xmx2048m
    -XX:MaxPermSize=350m
    -XX:ReservedCodeCacheSize=240m
    -XX:+UseConcMarkSweepGC
    -XX:SoftRefLRUPolicyMSPerMB=50
    
    
    24 条回复    2016-05-30 23:47:06 +08:00
    EPr2hh6LADQWqRVH
        1
    EPr2hh6LADQWqRVH  
       2016-05-29 21:17:51 +08:00   ❤️ 1
    第一次打开会建全文索引,是一个计算密集型操作
    kisnows
        2
    kisnows  
    OP
       2016-05-29 21:21:51 +08:00   ❤️ 1
    @avastms 这个我知道,但是我是在索引已经建好以后,还会时不时的卡顿。打开一下规模较小的项目就不会卡了。
    Lucups
        3
    Lucups  
       2016-05-29 21:23:29 +08:00   ❤️ 1
    JVM 默认会有一个内存占用限制,调大内存占用值即可。
    ferrum
        4
    ferrum  
       2016-05-29 21:23:48 +08:00   ❤️ 1
    要不就是你的项目真的特别大,要不就是系统有问题。

    我的笔记本配置远不如你,平时开两个 Webstorm 2016 都没问题。
    kisnows
        6
    kisnows  
    OP
       2016-05-29 21:25:03 +08:00   ❤️ 1
    @Lucups 我已经调到了 1024 ,基本是最大了。再往大调, WebStorm 直接就打不开了。
    kisnows
        7
    kisnows  
    OP
       2016-05-29 21:28:42 +08:00   ❤️ 1

    这里我已经调到可以说是最大了,因为再往大调 WebStrom 就直接打不开了。
    xuhaoyangx
        8
    xuhaoyangx  
       2016-05-29 21:29:57 +08:00   ❤️ 1
    idea +phpstorm +androidstudio 都没觉得卡。
    Lucups
        9
    Lucups  
       2016-05-29 21:31:22 +08:00   ❤️ 2
    @kisnows 我的 PHPStorm 现在占了 2.5G 内存,而你的 WebStrom 从截图来看才占了一个多 G 的内存。

    我的配置如下:

    # custom PhpStorm VM options

    -Xms128m
    -Xmx750m
    -XX:MaxPermSize=350m
    -XX:ReservedCodeCacheSize=240m
    -XX:+UseCompressedOops

    https://intellij-support.jetbrains.com/hc/en-us/articles/206544869-Configuring-JVM-options-and-platform-properties
    Lucups
        10
    Lucups  
       2016-05-29 21:33:15 +08:00   ❤️ 1
    kisnows
        11
    kisnows  
    OP
       2016-05-29 21:36:45 +08:00   ❤️ 1
    @Lucups
    ```
    -server
    -Xms512m
    -Xmx1024m
    -XX:MaxPermSize=250m
    -XX:ReservedCodeCacheSize=240m
    -XX:+UseConcMarkSweepGC
    -XX:SoftRefLRUPolicyMSPerMB=50
    ```
    你发的这个链接我试过了,不行。
    可能真的是项目太大了, 我刚才看了一下,项目文件 4000+,我也不知道为什么一个前端项目这么大
    看来 WebStorm hold 不住了
    monexus
        12
    monexus  
       2016-05-29 21:37:38 +08:00   ❤️ 1
    可以用 x64 的 exe 就在安装目录的 /bin 里
    drackzy
        13
    drackzy  
       2016-05-29 21:37:41 +08:00   ❤️ 1
    https://github.com/wfortin/webstorm-vmoptions/blob/master/WebStorm64.exe.vmoptions
    你用的 32 位的 Webstorm ,最好用 64 位的。难道你装的 32 位系统?
    Lucups
        14
    Lucups  
       2016-05-29 21:39:14 +08:00   ❤️ 1
    @monexus +1 被你找到问题了。哈哈
    suikator
        15
    suikator  
       2016-05-29 21:40:14 +08:00   ❤️ 1
    用 32 位也是闲得蛋疼
    kisnows
        16
    kisnows  
    OP
       2016-05-29 21:40:41 +08:00   ❤️ 1
    @drackzy 64 位 的系统,但是确实用的是 32 的 WebStorm, 用 64 位需要装 64 位的 JDK 。
    我看我还是去装一下吧。
    kisnows
        17
    kisnows  
    OP
       2016-05-29 21:43:45 +08:00   ❤️ 1
    @suikator 默认就是用的 32 的位,以前也没注意。今天看到了有 64 位的,才发现需要 64 位的 JDK 。
    msg7086
        18
    msg7086  
       2016-05-30 05:37:25 +08:00   ❤️ 1
    其实内存调到 1G 以上就打不开程序的时候你就该想想是不是 32 位导致的内存上限问题了。
    Exin
        19
    Exin  
       2016-05-30 10:12:23 +08:00 via Android   ❤️ 1
    找台别的电脑试试不就知道问题在哪里了吗
    soulteary
        20
    soulteary  
       2016-05-30 19:11:44 +08:00   ❤️ 1
    有三个建议你可以参考下,或许可以解决你的问题, 4000 文件不多,随便 5~6 个模块 npm install 后数量就破万了:

    1. 在 project 目录树中将某些 release/(node|etc)_modules/ => Mark Directory As Excluded...
    2. 不要直接打开你的项目,比如项目的根是 example ,那么不要把这个设置成 IDE 的根,用 IDE 分别打开这个 example/www 、/ example/server 、 /example/..., 使用模块功能来组织项目,减少全局索引的深度,和自动补全时的消耗(放心,还是能找到各种模块和 API 的,但是建立索引等时间会大大缩短)。
    3. 全局高亮级别,界面右下角,有个小人头,可以设置全局高亮级别,如果是全局开发(打开多个模块,建议高亮级别设置为中档 syntax ,不要找刺激设置 inspections ,设置 inspections 适合单独精加工一个模块)
    4. 插件数量,在项目里设置,关掉没用的 lint ,比如你同时使用了 clouser/eslint/jshint/jslint ,这样没必要,以及你安装了一些不必要一直开启的插件(到插件配置里关闭一些)
    kisnows
        21
    kisnows  
    OP
       2016-05-30 20:10:23 +08:00
    @soulteary 谢谢你的建议,我说的文件数量不包括 node_nodules 文件夹下的文件,而且也已经设置为 Excluded 了,还是不行的。最后是使用 64 位的程序并扩大内存使用量解决的。
    soulteary
        22
    soulteary  
       2016-05-30 22:17:15 +08:00
    @kisnows 不客气,还是推荐你试一试在左边的 project 目录树选择一些二级目录目录,然后 new->new module, 某个目录直接转换为模块,然后完全关闭程序,重新打开试试看,应该能解决这个问题才对。

    我现在在 mac/win 上使用 idea ,不修改 JVM 配置( idea12 的时候折腾过配置,之后默认配置就用的好好的),一般内存使用量都在 1.5~2.5G 左右,丝毫不卡...

    硬件资源的话,两台终端的 U 都是移动版本的 i7 ,即使 6700k 主打核显,算力也绝对碾压,不应该有问题才是;

    windows 的话,除了加 M2 SSD 外,我划了 8 个 G 并使用农企的 RAM Disk 做缓存盘,可能带来了一些性能提升(读写可以到接近 3k MB/s ),如果你觉得读写还是慢的话,或许可以试试,软件名称『 Radeon RAMDisk 』。
    kisnows
        23
    kisnows  
    OP
       2016-05-30 23:44:08 +08:00
    @soulteary 内存占有 1.5~2.5G 就够了,我之前卡是因为内存最大只能用到 1G ,然后就卡到奔溃了。
    kisnows
        24
    kisnows  
    OP
       2016-05-30 23:47:06 +08:00
    @soulteary
    >然后 new->new module, 某个目录直接转换为模块
    没有找到有 new module 这个选项。
    可能 WebStorm 没有这个功能。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1340 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 17:45 · PVG 01:45 · LAX 09:45 · JFK 12:45
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.