pprof是非常好用的效能分析工具
非 服務
類程
序\red
非服務類程式
源**:
package main
import
("fmt"
"time"
)func
dfs(ans *
int,path [
]int
,sum int
,k int
)if sum == k
for i:=
1;i<
10;i++
}func
solve
(k int)[
][]int
func
main()
cpu
效能分析
:\red
cpu效能分
析:
package main
import
("flag"
"fmt"
"log"
"os"
"runtime/pprof"
"time"
)var cpuprofile = flag.
string
("cpuprofile",""
,"write cpu profile to file"
)func
dfs(ans *
int,path [
]int
,sum int
,k int
)if sum == k
for i:=
1;i<
10;i++
}func
solve
(k int)[
][]int
func
main()
_= pprof.
startcpuprofile
(f)defer pprof.
stopcpuprofile()
} start := time.
now(
) fmt.
println
(len
(solve(24
))) fmt.
println
(time.
since
(start)
)}
程式執行完畢後:
go tool pprof algorithm cpuprofile.prof
top10 # 前10個
top5 -cum # 按cum排序
web # 輸出**件
web growslice # 檢視特定函式的**件
mem
效能分析
:\red
mem效能分
析:
package main
import
("flag"
"fmt"
"log"
"os"
"runtime/pprof"
"time"
)var cpuprofile = flag.
string
("cpuprofile",""
,"write cpu profile to file"
)var memprofile = flag.
string
("memprofile",""
,"write memory profile to this file"
)func
dfs(ans *
int,path [
]int
,sum int
,k int
)if sum == k
for i:=
1;i<
10;i++
}func
solve
(k int)[
][]int
func
main()
_= pprof.
startcpuprofile
(f)defer pprof.
stopcpuprofile()
} start := time.
now(
) fmt.
println
(len
(solve(24
))) fmt.
println
(time.
since
(start))if
*memprofile !=""_
= pprof.
(f)defer pprof.
stopcpuprofile()
}}
程式執行完畢後:
go tool pprof algorithm memprofile.mprof
top5 # 列出top5
list main.dfs # 列出函式dfs
對於服
務型別,
需要在m
ain文
件中加入
:\red
對於服務型別
,需要在
main
檔案中加
入:
import
()}
在服務執行後,來分析資料:
/debug/pprof/heap進入命令互動潔面,top檢視占用比:
/debug/pprof/heap > heap_inuse.svg參考:
profiling go programs + 優秀中文翻譯
【實踐】使用go pprof做記憶體效能分析
go pprof效能調優
golang 大殺器之效能剖析 pprof
PHP 效能分析與實驗 效能的巨集觀分析
摘要 編者按 此前,閱讀過了很多關於 php 效能分析的文章,不過寫的都是一條一條的規則,而且,這些規則並沒有上下文,也沒有明確的實驗來體現出這些規則的優勢,同時討論的也側重於一些語法要點。本文就改變 php 效能分析的角度,並通過例項來分析出 php 的效能方面需要注意和改進的點。編者按 此前,閱...
效能測試指標 效能測試需求分析與指標分析
一般而言,被測物件的效能要求,會在使用者需求規格說明書中給出,如單位時間內的訪問量需達到多少,業務響應時間不超過多少,業務成功率不低於多少,硬體資源耗用要在乙個合理的範圍中,效能指標以量化形式給出。對於相對規範的產品,產品團隊一般會給出類似的要求 壓測後,滿足相關指標,則測試通過,若不滿足,則需要分...
PHP 效能分析與實驗
對 php 效能的分析,我們從兩個層面著手,把這篇文章也分成了兩個部分,乙個是巨集觀層面,所謂巨集觀層面,就是 php 語言本身和環境層面,乙個是應用層面,就是語法和使用規則的層面,不過不僅 規則,更輔助以示例的分析。巨集觀層面,也就是對 php 語言本身的效能分析又分為三個方面 php 作為解釋性...