1
allgy 2022-12-26 15:06:33 +08:00
不应该,开启 pprof 会影响性能
|
2
v2wtf 2022-12-26 15:08:19 +08:00
没性能压力的,建议开着。你永远不知道线上会出什么幺蛾子。
|
3
FarmerChillax 2022-12-26 16:03:58 +08:00
赞同二楼说的,你永远不知道线上会出什么幺蛾子!!!
我再补充一下: 没性能压力的,建议开着。 有性能压力的,建议多开两个实例😆 |
4
perfectlife 2022-12-26 16:39:38 +08:00
运维的心声:硬件其实挺不值钱的,比起出故障的损失(经济和背锅)
|
5
Aumujun OP |
6
29EtwXn6t5wgM3fD 2022-12-26 16:45:58 +08:00
在没有 pprof 的时候只会耗一个 http 协程的开销,只有在 pprof 的时候才会有额外的开销。
|
7
virusdefender 2022-12-26 16:47:09 +08:00
我都是注册一个 sigusr1 来开启 pprof ,默认不开,不过一直监听一个本地端口也无所谓
|
8
gam2046 2022-12-26 17:10:50 +08:00
#3 是我最后实践的方式。
之前遇到过一个问题,grpc 服务,不定时出现 OOM ,由于配置了 docker restart always ,所以头几次 oom 并没有人发现。 快两个月以后,有客户反应,阶段性服务不可用,这个时候才回去看日志,才知道上线之处就有问题了。 之后就不管需要不需要,pprof 一律都给安排上了。实在对性能要求高的,一个开,一个不开,前面怼上 SLB |
10
Aumujun OP @virusdefender 做的动态的开关吗 好像也是个不错的操作。
|
11
gamexg 2022-12-26 20:46:57 +08:00
net/http/pprof
会有性能损耗? 我看源码,只会在 init 函数注册几个 debug/pprof http HandleFunc 。 |
12
tairan2006 2022-12-27 08:09:40 +08:00 via Android
不都是用 http 接口么…本来 metric 也要 http 啊,有啥开销
|
13
paceewang1 2022-12-29 09:36:00 +08:00
pprof 不会消耗性能吧,我记得压测对比过 http 服务是相差无几的
|