記一次 gocode 在高版本 Go 高耗 CPU 導致的 LiteIDE 卡頓
《記一次 gocode 在高版本 Go 高耗 CPU 導致的 LiteIDE 卡頓》
先說結論: LiteIDE 用來自動補完的元件 gocode,對 Go 1.13 及以上,CPU 動不動就上 80%,儲存一下檔案也能出來 40%
然後是現象和過程: 電腦 CPU i5,使用 LiteIDE 好幾年了。但是最近兩週,LiteIDE 用起來非常卡頓,監測 CPU 經常能錄得 LiteIDE 在 20% 多,以及 gocode 經常佔用 CPU 50%,85% 等。 開始以為是公司防毒軟體問題,後來做了各種排除掃描無果。 又以為是軟體版本有問題,於是從 Go 1.13 升級到 Go 1.14 ,以及 LiteIDE 升級到 x36.3,然後還是卡。 百思不得其解,百度搜尋相關過程中,發現了有人提到 gopls 是 vscode 的另一種自動完成方案,然後吐槽 gocode 已經不維護了,並且在 GO 升級後開了 mod 以後也是爆卡。 然後才想起卡頓的開始時間點,跟我把 Go 從 1.12 升級到 1.13 正好吻合。
解決: 退回到 Go 1.12,用了 LiteIDE x36.1 後超高 CPU 的問題消失。(LiteIDE 有可能是不用退回舊版本,未證實。因為問題是 gocode)
遺留問題: LiteIDE 是個很好用的開源軟體,但是依賴的 gocode 已經力不從心了。估計後面要看看是否用 gopls 來做補完方案。
20200314 更新: 週末回在家裡做事,然後發現家裡用的是 Go 1.13.8 ,LiteIDE 為 x36.3 ,並沒有出現問題。有點困惑,可能還是跟公司的賽門鐵克防毒有很大關係,但是 gocode 印發問題是確定的。
更多原創文章乾貨分享,請關注公眾號
- 加微信實戰群請加微信(註明:實戰群):gocnio
相關文章
- 一次FGC導致CPU飆高的排查過程GC
- 一次.net code中的placeholder導致的高cpu診斷
- (效能測試)--記錄一次高可用場景導致CPU資源升高
- 記一次排查CPU高的問題
- oracle 高耗cpu sql語句的捕捉 。OracleSQL
- 一次死鎖導致CPU異常飄高的整個故障排查過程
- 異常等待事件Resmgr:Cpu Quantum導致CPU利用率高事件
- 效能查詢並殺CPU高耗程式
- 導致雲伺服器CPU經常跑高的原因有哪些?伺服器
- Nodejs mkdirP 模組導致CPU佔用高的問題NodeJS
- 欄位字元型別不匹配導致CPU佔用率高字元型別
- 效能分析(5)- 軟中斷導致 CPU 使用率過高的案例
- 執行計劃變化導致CPU負載高的問題分析負載
- 【RAC】處理因ons導致CPU使用率過高的問題
- 解決new Thread().Start導致高併發CPU 100%的問題thread
- [轉帖]JFR 定位因為 SSL 導致 CPU Load 飈高的問題
- 一次 MySQL 誤操作導致的事故,「高可用」都頂不住了!MySql
- 來看看是什麼原因導致生產服上的系統CPU高的?
- 【Mysql】JDB2導致磁碟io使用率高 導致mysql延遲過高MySqlDB2
- 記一次 hosts 檔案配置錯誤導致應用卡頓的奇葩問題
- 記一次使用easyexcel匯入excel導致cpu跑滿的問題Excel
- Dubbo Hession反序列化導致CPU佔用飆高用例分析
- 故障分析 | 大量短時程式導致 cpu 負載過高案例一則負載
- 【故障處理】序列cache值過小導致CPU利用率過高
- 總結導致oracle資料庫主機CPU sys%高的一些原因Oracle資料庫
- 一次線上CPU高的問題排查實踐
- 再記一次 應用伺服器 CPU 暴高事故分析伺服器
- 記一次資料庫高CPU佔用率處理過程資料庫
- sql中使用函式導致cost高SQL函式
- Win10系統安裝中文IME導致CPU佔用率過高的解決方法Win10
- 記一次 .NET 某供應鏈WEB網站 CPU 爆高事故分析Web網站
- 記一次K8S叢集Node節點CPU消耗高故障K8S
- 一次生產環境CPU佔用高的排查
- Java cpu 高排查Java
- 核心資料庫由於大量的latch free導致CPU資源耗盡的現場資料庫
- 記一次排序導致的記憶體危機排序記憶體
- Java中的CPU佔用高和記憶體佔用高的問題排查Java記憶體
- 因事件堵塞導致頁面卡頓事件