PTT推薦

[心得] 善用 Go 語言效能測試工具來提升執行效率

看板Soft_Job標題[心得] 善用 Go 語言效能測試工具來提升執行效率作者
appleboy46
(小惡魔)
時間推噓 5 推:5 噓:0 →:4

部落格好讀版: https://bit.ly/golang-tool
投影片線上看: https://bit.ly/golang-tool-slide

這次很高興能到高雄 mopcon 給一場演講『善用 Go 語言效能測試工具來提升執行效率』投影片在上面連結,底下紀錄會後一些朋友的意見跟問題?

為什麼要從 Python 到 Golang?

第一版 Python 由同事進行開發,這個版本也在公司內部運作了很久,也很少改版,而這次遇到效能上的問題,加上要搭配 AI,故我先拿 Golang 進行第一次的改版,方式還是使用 Regex,把整個邏輯換掉,也優化不少 Regex,效能提升不少。而至於為什麼要用
Go 而不是用 Python 原因是當下對於 Go 比較熟悉,也想嘗試看看用 Go 能提升多少效能,並非 Python 不好,考慮到團隊目前的技能樹,加上在自家 IT 環境內,用 Go 可以編譯出單一執行檔給同仁使用,相對 Python 來說是方便許多。在公司內部有些特定的環境是完全沒有網路了的,這時候用 Go 搭配 vendor 就可以無痛在該環境編譯,這點是
Go 非常強大的地方。

為什麼會想重寫 Parser?

後來用 Go 改寫的 Regex 版本,從原本的 9xx 秒降到 7 秒多,已經提升了不少,接下來要再往下繼續調整,估計也已經沒多少空間了,加上此版本對於更大的檔案量,1 GB
以上資料量,還是需要用掉不少系統資源,故我花了一週下班時間,重新改寫 Parser,最主要要驗證從 7 秒多可以降到幾秒呢?後來事實證明可以從 7 秒多降到 1 秒左右,整體來說提升了不少,也讓其他同仁在使用 Parser 的時候,從原本需要 400 台機器,降到不到 5 台。省下不少公司的資源,這些資源又可以去處理更多事情了。

--

※ PTT留言評論
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.243.117.26 (臺灣)
PTT 網址

MOONY13511/08 10:25直接go mod vendor然後整包丟去沒外網的環境嗎?

appleboy4611/08 10:40對 ... 在有網路的地方先這樣做 ..

postpone11/08 11:12go寫的真的好快

qrtt111/08 12:41精采!

damody11/08 23:10隨便一個編譯器語言都能做到一樣的事

eric745211/09 02:06chrome也把自動化測試改go了 快超多

yuanyu9022111/09 02:36

gofigure11/09 10:09拿直譯式和編譯式比是在哈囉

ChampYen11/13 23:49感謝分享