본문으로 건너뛰기

블로그

구글 챗 팀의 Chrome DevTools MCP 메모리 누수 사례와 Chrome Dev 채널 업데이트를 정리했습니다. 모두 공식 원문을 확인했습니다.

작성

이번 주 웹 분야에서 확인한 공식 발표 두 건입니다. 하나는 구글 챗 팀의 Chrome DevTools MCP 사례이고, 다른 하나는 Chrome 개발 채널 업데이트입니다. 둘 다 만든 곳의 글을 열어 날짜와 내용을 확인했습니다.

데이터 표
Chrome DevTools MCP10월 29일구글 챗 팀이 메모리 누수 30건 넘게 고친 과정
Chrome Dev 채널10월 30일개발 채널이 159.0.8130.0으로 올랐습니다

출처: 각 소식의 공식 글과 릴리스 노트.

Chrome DevTools MCP로 메모리 누수 찾기 (10월 29일). 구글 챗 팀이 Chrome DevTools MCP의 메모리 도구를 에이전트에 연결해 힙 스냅샷을 분석했고, 30건 넘는 누수를 고쳤다고 공식 글에 적었습니다. 분석한 스냅샷은 약 500MB였고 팀이 직접 녹화해서 에이전트에게 건넸습니다. 가장 큰 건 에러 객체였습니다. 모듈이 로드될 때 만든 에러 상수 하나(EMPTY_KEY_ERROR)가 14.1MB를 붙들고 있었고, 미리 만들어 둔 에러 객체 전체로는 약 20MB였습니다. 에러는 만들 때 호출 스택을 함께 잡아 두기 때문에, 스택이 앱 초기화 코드를 계속 붙잡고 있었다는 설명입니다. 던질 때 만들면 해결됩니다.

창 하나에 1,142개의 이벤트 리스너가 있었고 그중 128개가 window에 붙어 있었습니다. 126개는 "5분 전" 같은 상대 시간 표시 컴포넌트가 각자 visibilitychange를 등록한 것이었고, 공유 서비스 하나로 모아서 126개를 1개로 줄였습니다. 에이전트도 이건 진짜 누수가 아니라 규모 문제라고 짚었다고 합니다. 이 밖에 27건 넘는 누수를 더 고쳤고, 전체로 수백 MB를 아꼈다고 하지만 수정별 수치는 글에 없습니다.

그림: Chrome for Developers

해석입니다. 며칠씩 켜 두는 웹 앱이라면 이 절차를 따라 해 볼 만합니다. 다만 30건은 구글 챗이라는 한 앱의 결과이고 독립 재현은 확인하지 못했으니, 다른 앱에서 이만큼 찾는다는 뜻으로 읽으면 안 됩니다.

Chrome Dev 채널 업데이트 (10월 30일). Chrome 팀이 Windows, Mac, Linux용 개발 채널을 159.0.8130.0으로 올렸습니다. 안정판 발표가 아니라 개발 채널 배포입니다. 새 웹 기능이 안정판에 들어간다는 뜻은 아니어서, 미리 회귀를 확인하는 용도로만 보면 됩니다.

두 소식은 무게가 꽤 다릅니다. 구글 챗 사례는 숫자와 절차가 둘 다 공개돼 있어서, 오래 켜 두는 웹 앱을 가진 팀이라면 한 번 따라 해 볼 만합니다. 개발 채널 소식은 "이런 게 오고 있다" 정도로 보면 됩니다. 이 부분은 제 해석입니다.