golang效能優化

2021-10-20 21:22:49 字數 417 閱讀 3023

效能優化:

cpu:

1去除不必要的序列化、反序列化;

2控制goroutine數量,避免goroutine洩露

3提公升cpu利用率,使用中斷機制讓cpu以更少代價io

記憶體:1減少gc:減少string值拷貝,使用byte;string.stringbuilder

2struct型別字段順序

3預分配記憶體:slice,map

4slice、map不儲存指標型別

5使用原子化操作

disk:

減少磁碟隨機讀寫io

工具go tool pprof

go tool trace

go build -gcflags=」-m」

godebug=」gctrace=1」

go get benchmark

golang 效能優化之累加雜湊

很多時候效能問題總是發生在一些不起眼的地方。最近做乙個效能問題分析的時候發現,乙個函式裡面使用由於字串拼接產生的臨時字串導致記憶體 了40 120g 記憶體的機器 而這些臨時字串給 gc 也帶來了非常大的負擔,成為主要的效能瓶頸,而這些字串作為 map 的 key,又必須要拼接,所以想到了直接使用 ...

golang 程式效能優化工具介紹

本文旨在介紹go語言中用來分析效能的工具 簡介 pprof是go自帶的效能分析工具,可以分析程式的各個函式的cpu占用情況,記憶體占用情況等。使用方法 方法一 基於go的功能測試函式 go的功能測試函式有兩種,一種是func test t testing.t 一種是benchmark b testi...

mysql效能優化 mysql效能優化

優化方式 1.空間換時間 冗餘 2.時間換空間 字段優先使用型別 int date char varchar text 索引型別 btree索引 hash索引 索引的葉子下,存放乙個資訊指向所在行的資料位址。btree有利於範圍查詢,hash有利於精確查詢。btree用的更多一些。btree索引的常...