vscode 写 go 项目吃了 6G 内存,有办法优化吗 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ampedee
V2EX    问与答

vscode 写 go 项目吃了 6G 内存,有办法优化吗

  •  
  •   ampedee 2022-07-23 00:15:21 +08:00 4506 次点击
    这是一个创建于 1184 天前的主题,其中的信息可能已经有所发展或是发生改变。

    微服务需要开多个项目,今天 vscode 开了 6 个 go 项目吃了 6G 内存,活动监视器里发现启动了 6 个 gopls 进程,每个平均 4-500mb 内存,加起来占了 3 个 G ,人都麻了。

    理论上 gopls 应该是支持多个客户端的(-remote=auto),有人知道 vscode 应该怎么设置么?

    第 1 条附言    2022-07-23 09:21:50 +08:00

    现在的配置是 mbp 2019 16g,还有个内存大户chrome,两个一起开肉眼可见开始卡

    23 条回复    2022-07-24 18:25:41 +08:00
    westoy
        1
    westoy  
       2022-07-23 01:10:12 +08:00
    克服恐惧的办法就是直面恐惧

    克服内存焦虑的办法就是把内存加满
    liaohongxing
        2
    liaohongxing  
       2022-07-23 08:04:08 +08:00
    买个 8G 或者 16G 内存插上 ,现在没有 32G 都不好意思。
    nuyan
        3
    nuyan  
       2022-07-23 09:49:50 +08:00
    mbp 能加内存?
    felixcode
        4
    felixcode  
       2022-07-23 09:53:24 +08:00   5
    问问 V 站里那些说 16G 内存用于开发完全足够的人怎么解决的。
    Maboroshii
        5
    Maboroshii  
       2022-07-23 10:21:31 +08:00 via Android
    看下 vscode go 插件的文档,应该有 gopls 启动参数配置说明的。我用 coc.nvim ,那个里面反正是可以配置
    stevenshuang
        6
    stevenshuang  
       2022-07-23 11:08:47 +08:00 via iPhone
    @Maboroshii 说到 coc.vim 请教一下,之前用 vim 配置 coc 写 go ,打开项目就启动 2 个 gopls 。但是 youcompleteme 就不存在这个情况,看了网上一些配置,配置了感觉没啥用,不知道您遇到过没?
    Maboroshii
        7
    Maboroshii  
       2022-07-23 11:32:49 +08:00 via Android
    @stevenshuang 没注意诶,你是不是也用 vim-go 了? 这个里面好像也要配置启动参数
    stevenshuang
        8
    stevenshuang  
       2022-07-23 11:39:50 +08:00
    @Maboroshii 之前粘贴了别人的插件列表,忘了之前的配置了,没准把 vim-go 引进来了。后来就改用 youcomplete 了。
    statumer
        9
    statumer  
       2022-07-23 11:51:40 +08:00 via iPhone
    才占 6g ,建议改成 PC 编程或者 Remote SSH ,笔记本的内存捉襟见肘。
    我开发机是 64g 内存,体验已经很不错,按韦老师的说法 100g 以上内存才够程序员用。
    ampedee
        10
    ampedee  
    OP
       2022-07-23 13:14:37 +08:00 via iPhone
    @felixcode 再别说了
    ampedee
        11
    ampedee  
    OP
       2022-07-23 13:16:11 +08:00 via iPhone
    @statumer 我还没跑程序和 docker ,只是多开几个项目看看代码就这样了
    lostpg
        12
    lostpg  
       2022-07-23 13:40:53 +08:00   1
    "go.languageServerFlags": [
    "-remote=auto",
    "-rpc.trace"
    ],
    yiiouo
        13
    yiiouo  
       2022-07-23 13:57:50 +08:00
    我用 vscode 写前端,开了 4 、5 个项目就占了 10G 多的内存...
    Daming
        14
    Daming  
       2022-07-23 14:01:37 +08:00
    @nuyan #3
    当然可以加,不过对手艺要求有点高,还要改下电阻

    可以去 B 站看看维修厮的视频
    richangfan
        15
    richangfan  
       2022-07-23 15:35:05 +08:00
    少开点浏览器页面
    visitant
        16
    visitant  
       2022-07-23 15:37:28 +08:00   3
    用 vscode 的 workspace ,在一个 workspace 里就是一个 gopls 进程了
    march1993
        17
    march1993  
       2022-07-23 15:49:17 +08:00
    remote 到开发机呗。开发机的内存拉满。
    bootvue
        18
    bootvue  
       2022-07-23 16:04:08 +08:00
    你这让 java 情何以堪
    lower
        19
    lower  
       2022-07-23 19:53:50 +08:00
    remote 真的好用么?我有次试连到 wsl ,卡的要死啊……
    ampedee
        20
    ampedee  
    OP
       2022-07-23 21:49:29 +08:00 via iPhone
    @lostpg 这样配置可行,之前我没加第二个 pc 的选项
    nuyan
        21
    nuyan  
       2022-07-23 23:19:14 +08:00
    @Daming 感谢我看看去
    yianing
        22
    yianing  
       2022-07-24 16:36:38 +08:00
    https://github.com/golang/tools/blob/master/gopls/doc/daemon.md ,gopls 官方文档,这个 daemon 模式只能节省一部分内存,还是加内存最好用
    jaoyina
        23
    jaoyina  
       2022-07-24 18:25:41 +08:00 via iPhone
    6G 还算好吧,毕竟开了好几个项目。难道你电脑才 8G 内存?
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2544 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 30ms UTC 15:04 PVG 23:04 LAX 08:04 JFK 11:04
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86