Dgraph是go语言开发的,所以go语言的相关性能检测工具适合查询,同时可以借助dgraph自带的相关工具和操作系统自带的命令。 1、go语言性能检测工具pprof (1) go tool pprof http://ip:port/debug/pprof/profile(检测cpu使用情况) 例如:go tool pprof localhost:8080/debug/pprof/profile进入命令界面 通过help可以查看输入的命令,这里常用的top命令显示默认占用CPU最多的10个函数 通过输入web命令可以将结果在浏览器中显示,更加直观,需要安装Graphviz。 (2) go tool pprof http://ip:port/debug/pprof/heap(检测堆内存使用情况) 例如:go tool pprof http://localhost:8080/debug/pprof/heap进入命令界面 同上,可以通过help查看输入的命令,输入top命令显示占用内存前10的函数 同样,可以通过web命令直观的进行显示 通过help命令,可以发现pprof的性能情况可以通过ps、svg、pdf等多种形式输出,有些形式的显示需要安装相应的依赖工具。 (3) gc垃圾收集 Golang自带gc,在不改动代码的情况下,可以设置GODEBUG=gctrace=1环境变量启动程序,来向标准错误输出打印gc log。 例如:GODEBUG=gctrace =1 ./xxxx.exe or GODEBUG=gctrace =1 go run main.go 程序将会显示gc信息 每行显示信息的含义如下: gc 1 @2.104s 0%: 0.018+1.3+0.076 ms clock, 0.054+0.35⁄1.0/3.0+0.23 ms cpu, 4->4->3 MB, 5 MB goal, 4 P 1 表示第一次执行 @2.104s 表示程序执行的总时间
一江春水向东流