주제: profiling
-
프로덕션에서의 지속적 프로파일링: 상시 가동되는 샘플링 프로파일과 이를 통해 답할 수 있는 것
지속적 프로파일링은 CPU와 메모리 프로파일을 시간에 걸쳐 체계적으로 수집해 레이블이 달린 시계열로 저장합니다. 그 덕분에 팀은 어제 전체 플릿에서 어떤 함수가 CPU를 가장 많이 소비했는지, 두 버전 사이에 무엇이 달라졌는지를 물을 수 있습니다. 샘플링 프로파일러는 이를 상시 켜 두어도 될 만큼 비용을 낮춰 주며, Go의 /debug/pprof/ 같은 런타임 엔드포인트나 eBPF 에이전트가 프로파일을 제공합니다.
-
Reading a flame graph: width is samples, the x-axis is not time
A flame graph stacks sampled call stacks so that frame width is the share of samples and height is stack depth; the x-axis is sorted alphabetically, not by time. Read wide plateaus at the top as on-CPU hot spots, wide frames with many thin children as callers to call less often, and remember that a CPU flame graph cannot show waiting.
기계 판독 가능: JSON