Pulse 게시 ·

Cloudflare, Workers·Durable Objects의 운영 중 CPU·메모리 프로파일링 지원

Cloudflare가 Workers·Durable Objects에 요청형 CPU·메모리 프로파일링을 추가했다. 대시보드·CLI에서 운영 중인 코드의 자원 사용을 플레임그래프로 보고 파일로 내려받을 수 있다. 충분한 트래픽이 있어야 하며, 메모리 분석은 수집 시간에 발생한 할당만 보여준다. 연속 프로파일링은 개발 중이다.

내용·출처 업데이트 · 2026. 10. 10. 오후 2:31

Workers Observability에서 CPU·메모리 프로파일을 요청하고 인터랙티브 플레임그래프·표로 분석하거나 파일로 내려받는다. CLI와 API도 지원한다.

일반 Worker는 실행 중인 isolate 하나를 무작위로 선택하며, Durable Object는 이름으로 특정 객체를 지정할 수 있다.

프로파일 생성을 위해 새 isolate를 시작하지 않는다. 배포된 버전에 충분한 트래픽이 있어야 수집하기 쉽다.

TypeScript 프로젝트는 소스맵을 활성화해야 난독화된 함수 이름 대신 이해하기 쉬운 이름을 볼 수 있다.

Cloudflare 내부 사례에서는 중복 JSON 순회 제거로 해당 함수가 2.7배 빨라졌다고 밝혔다. 별도 메모리 사례에서는 불완전하게 꺼진 Prometheus 코드를 제거해 P999 메모리 사용량이 133MB에서 118MB로 줄었다.

수집 시작 전의 메모리 할당은 이번 프로파일에 나타나지 않는다. 드문 장애 시점도 포착하도록 자동 연속 프로파일링을 개발하고 있다.

로컬에서 재현하기 어려운 메모리 초과 문제도 실제 요청을 처리하는 함수의 할당량을 따라 원인을 좁힐 수 있다.

원문