Go

성능 최적화

프로파일링, 벤치마킹, CPU 프로파일링, 메모리 프로파일링, 병목 분석, 최적화

22 면접 질문·
Senior
1

Go의 pprof 도구란 무엇인가요?

답변

pprof는 Go에 내장된 프로파일링 도구로 CPU, 메모리, goroutine 및 기타 메트릭의 성능을 분석할 수 있습니다. 바이너리 형식의 프로파일을 생성하며 go tool pprof로 분석할 수 있습니다. 이 도구는 성능 병목을 식별하고 프로덕션 환경의 Go 애플리케이션을 최적화하는 데 필수적입니다.

2

Go 애플리케이션에서 CPU 프로파일링을 활성화하려면 어떻게 하나요?

답변

CPU 프로파일링은 pprof.StartCPUProfile(file)로 활성화하고 pprof.StopCPUProfile()로 중지합니다. 이 방식은 프로그램 실행 중 CPU 사용량을 캡처합니다. 웹 애플리케이션의 경우 net/http/pprof 패키지를 사용하면 프로파일링 엔드포인트가 자동으로 노출됩니다.

3

CPU 프로파일링과 메모리 프로파일링의 차이는 무엇인가요?

답변

CPU 프로파일링은 각 함수에서 소비된 시간을 측정하여 실행 병목을 식별하고, 메모리 프로파일링은 메모리 할당을 측정하여 누수와 과도한 사용을 감지합니다. CPU 프로파일링은 기본적으로 10ms마다 샘플링하고, 메모리 프로파일링은 설정에 따라 모든 할당 또는 샘플을 캡처합니다.

4

testing 패키지로 Go에서 벤치마크를 어떻게 만드나요?

5

Go 벤치마크에서 '1000 ns/op' 결과는 무엇을 의미하나요?

+19 면접 질문

다음 면접을 위해 Go을 마스터하세요

모든 질문, flashcards, 기술 테스트, 코드 리뷰 연습, 면접 시뮬레이터에 접근하세요.

무료로 시작하기