golang的cpu内存性能监控调优

直接说可以生成cpu性能的

首先安装 graphviz

golang要用它来生成cpu性能图,把安装后根目录下的bin目录配置到环境变量里;

在代码里开启性能监控代码如下

package main

import (
	"flag"
	"gamelogic/logicFrame"
	"net/http"
	_ "net/http/pprof"
)

func main() {
	defer func() {
		if err := recover(); err != nil {
		}
	}()
	config_path := flag.String("Config", "config.cfg", "config file path!")
	flag.Parse()

	go func() {
		http.ListenAndServe("0.0.0.0:6060", nil)
	}()

	gamelogic := logicFrame.NewGameLogicServer(*config_path)
	gamelogic.Start()
}

因为这里的框架有可能是http之上的websocket协议也可能是tcp或者udp协议,所以这里直接又开了一个http协议来进行性能监控

打开cmd命令生成cpu性能图

  • go tool pprof http://192.168.124.18:6060/debug/pprof/profile #获取大概30秒的时间生成cpu使用的数据 然后进入交互式命令
  • (pprof) web #直接输入web查看cpu性能的使用图
备案号:豫ICP备14002392号-2