빠른 소식

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

·설명 약 3분·작성: 해비·블로그 소개

이번 소식

Cloudflare가 운영 중인 Workers와 Durable Objects의 CPU·메모리 프로파일링을 지원한다고 발표했습니다. 프로파일링은 코드의 어느 함수가 연산 시간을 쓰거나 메모리를 할당하는지 표본을 모아 살펴보는 분석입니다. 이제 로컬 개발 환경뿐 아니라 실제 요청을 처리하는 환경에서도 필요할 때 측정을 시작할 수 있습니다.

달라진 점

Cloudflare 대시보드의 Workers & Pages에서 Worker를 선택하고 Observability의 Flamegraph 화면을 열면 CPU 또는 메모리 프로파일을 요청할 수 있습니다. 측정 시간과 대상 버전을 고른 뒤 Capture Profile로 수집합니다. 플레임그래프는 함수 호출을 직사각형으로 펼친 그림으로, 넓은 항목을 중심으로 자원 사용이 큰 부분을 살펴볼 수 있습니다. 항목을 눌러 확대하거나 표 보기로 결과를 확인할 수도 있습니다.

명령줄 도구인 cf CLI에서도 프로파일을 요청할 수 있고, 결과 파일을 내려받아 pprof 같은 분석 도구에서 더 살펴볼 수 있습니다. Durable Objects는 상태를 유지하는 실행 단위이므로 특정 객체를 대상으로 분석하는 방식도 지원합니다.

어떤 점이 달라지나요?

앱 운영팀은 로그에 오류가 남거나 CPU·메모리 지표가 높아진 상황에서 어떤 코드가 관련돼 있는지 좁혀 볼 수 있습니다. 실제 서비스 요청을 관찰하므로 개발용 컴퓨터에서 재현하기 어려웠던 사용 패턴을 살피는 데 도움이 됩니다. 일반 이용자가 켜는 기능은 아니며, 앱을 운영하는 개발자가 진단에 사용하는 도구입니다.

Cloudflare는 내부 서비스에서 중복 연산과 예상치 못한 메모리 할당을 찾은 사례를 소개했습니다. 이는 해당 팀의 사례이며, 모든 앱에서 같은 속도 향상이나 비용 절감이 생긴다는 뜻은 아닙니다. 이번 글에서도 실제 앱을 실행해 효과를 측정하지 않았습니다.

사용 전 확인할 점

대상 Worker 버전이 실제로 배포돼 있고 충분한 요청을 받아야 합니다. 분석을 위해 새 실행 환경을 띄우는 방식이 아니어서 트래픽이 적으면 프로파일을 얻기 어려울 수 있습니다. TypeScript 프로젝트는 원래 코드와 변환된 코드를 연결하는 소스맵을 활성화해야 변환된 함수 이름 때문에 결과를 읽기 어려워지는 일을 줄일 수 있습니다.

메모리 프로파일은 측정 구간에 표본으로 수집한 할당을 분석하는 자료입니다. 측정 전에 앱을 시작하면서 할당한 메모리는 보이지 않을 수 있습니다. 모든 객체의 현재 보관 상태를 보여 주는 스냅샷으로 받아들이면 안 됩니다. 지속적으로 기록하는 연속 프로파일링은 향후 계획이며, 이번에 제공된 기능은 요청할 때 측정하는 방식입니다. 공지에는 요금이나 플랜별 제공 조건이 명시되지 않아 무료·모든 플랜 제공으로 단정하지 않습니다.

공식 출처·발표 시점

공식 발표: 2026년 10월 9일 22:00 KST.

원문 출처 보기 →

이 소식이 도움이 되었나요?

댓글 0

이 글을 쓴 해비

웹사이트를 제작·운영하고, 개인 서비스와 자동화·AI 도구를 만듭니다. 직접 만들며 배운 내용과 문제 해결 과정을 BlogFlow에 기록합니다.

새 글 받아보기

RSS 리더에서 BlogFlow의 새 글을 확인할 수 있습니다.

RSS 피드 구독하기

댓글 남기기