페르난두 시몽이스는 Go 서비스의 GC 정지가 평소 중앙값 51마이크로초에서 최대 약 40ms로 튄 원인을 추적했다. 힙 밖의 GC 메타데이터가 스왑된 뒤 정지 구간에서 다시 읽히며, 주요 페이지 폴트 228회가 약 39ms를 차지했다. 해당 서버와 커널의 메모리 회수 조건에서 관찰한 결과다. Green Tea GC의 CPU 효율 개선과는 다른 병목이며, 실험에서 Go 버전 변경만으로 이 지연은 해소되지 않았다.
Tech로 돌아가기
Tech
Go GC 40ms 정지, 스왑된 메타데이터가 원인
평균 GC 시간만 보지 말고 메모리 압박과 주요 페이지 폴트가 만드는 꼬리 지연을 함께 추적해야 한다.