我想分析一下我用Go写的一个简单的want服务器。它接受请求,将请求映射到avro对象,并在go例程中将其发送给Kafka。要求是它立即响应,并在稍后向Kafka发送一个对象。在本地,它的平均响应时间不到1毫秒。我一直在尝试通过使用davecheney/profile包启动脚本并使用jmeter发送测试请求来分析它。我可以在输出中看到,配置文件已经生成,但它仍然是空的,无论jemeter发送请求的时间有多长。我在Mac El Capitan上运行它我读到在Mac上的分析有一些问题,但它将在El Capitan上工作。你有什么建议吗?
发布于 2015-11-18 19:10:59
首先,我不确定您是否正在尝试进行延迟分析。如果是这样,请注意Go的CPU分析器只报告函数在CPU上执行所花费的时间,而不包括睡眠时间等。如果CPU分析确实是您正在寻找的,请继续阅读。
如果您运行的是and服务器,只需在导入中包含以下内容(在main()所在的文件中)并重新构建:
import _ "net/http/pprof"然后,在通过jmeter应用负载的同时,运行:
go tool pprof /path/to/webserver/binary http://<server>/debug/pprof/profilenet/http/pprof包提供了性能分析挂钩,允许您随时按需分析The服务器,即使它在生产环境中运行。但是,如果您的want服务器是公开的,那么您可能希望使用不同的、有防火墙的端口。
https://stackoverflow.com/questions/33757309
复制相似问题