구글이 Windows, Linux, macOS 등 데스크톱 플랫폼의 크롬(Chrome)에 페이지를 순간적으로 불러오는 새로운 기능을 선보일 계획이다. '백-포워드 캐시(back-forward cache)'라는 이름의 이 기능은 이미 안드로이드용 크롬에서 제공되고 있다.
백-포워드 캐시, 크롬 92에 포함된다
Windows Latest의 보도에 따르면, 이번 새 기능은 데스크톱 플랫폼을 대상으로 크롬 92 업데이트와 함께 배포된다. 구글은 이 기능에 대해 '실험적 롤아웃' 방식을 택했는데, 이는 모든 사용자가 한꺼번에 사용할 수 있는 것이 아니라 점진적으로 적용된다는 의미다.
주목할 점은 백-포워드 캐시가 데스크톱과 모바일 모두에서 파이어폭스(Firefox)와 사파리(Safari)에는 이미 여러 해 동안 탑재돼 온 기능이라는 것이다.
기능이 활성화되면 뒤로 가기 또는 앞으로 가기 버튼으로 접근한 페이지는 즉시 열린다. 원리를 간단히 말하자면, 크롬은 최근 방문한 웹페이지의 사본을 캐시에 저장해 두었다가 필요할 때 바로 꺼내 보여주는 방식이다.
구글 그룹스(Google Groups)에 올라온 공식 게시물은 이 기능을 다음과 같이 설명하고 있다.
백-포워드 캐시는 사용자가 페이지에서 다른 곳으로 이동한 후에도 해당 페이지를 살려 두고, 세션 기록 탐색(브라우저의 뒤로/앞으로 버튼, history.back() 등)에 재활용해 탐색을 즉각적으로 만들어 주는 브라우저 기능입니다. 캐시에 저장된 페이지는 동결 상태로 유지되며 어떠한 자바스크립트도 실행하지 않습니다.
이 기능은 로딩 시간을 단축할 뿐만 아니라, 웹페이지를 다시 내려받을 필요가 없으므로 데이터 사용량 절감 효과도 함께 누릴 수 있다.
크롬 사용 통계에 따르면 데스크톱 탐색의 10건 중 1건, 모바일에서는 무려 5건 중 1건이 뒤로 또는 앞으로 버튼을 통해 이루어지고 있다. 이러한 수치는 해당 기능의 필요성을 더욱 부각시켜 준다.
안드로이드용 크롬에는 백-포워드 캐시가 이미 적용됐으며, 약 2년간의 테스트 과정을 거쳤다. 다만 현재 안드로이드용 크롬은 서로 다른 사이트 간 이동에만 이 기능을 지원하며, 같은 웹사이트 내에서 방문한 페이지는 기존 방식 그대로 로딩된다.
개발자가 알아야 할 것: 백-포워드 캐시 친화적인 웹페이지 만들기
구글 그룹스 게시물에 따르면, 이 기능은 별도의 '개발자 활성화' 작업 없이도 작동하지만, 몇 가지 조치를 통해 웹페이지가 백-포워드 캐시와 더 잘 호환되도록 만들 수 있다.
Web.dev의 기술 가이드 중 하나는 'unload' 이벤트 사용을 피하라고 권고한다. unload 이벤트는 백-포워드 캐시 기능을 방해할 수 있으며, 최악의 경우 브라우저가 깨진 웹페이지를 캐시를 통해 불러오는 결과로 이어질 수 있기 때문이다.
사용자들은 가까운 미래에 이 기능과 관련해 더 많은 소식을 접하게 될 것이다. 한편, 구글이 데스크톱 환경에서 백-포워드 캐시 출시를 이토록 오랫동안 미뤄 왔다는 점은 다소 의외로 느껴지는 대목이다.