사용자 행동 연구결과를 통한 파이어폭스 1.5의 앞-뒤 성능 향상 기능

파이어폭스 1.0 에서 1.5로 업그레이드를 하고 나서 사람들에게서 나온 불평은 메모리 문제이다. 이 문제에 대해서 2월 14일 다음과 같은 내용이 mozillaZine (http://www.mozilla.or.kr/zine/?p=685) 에 올라왔다.

파이어폭스 수석 엔지니어인 벤 구저는 자신의 블로그에 파이어폭스 1.0에 비해 파이어폭스 1.5에서 메모리 사용량이 증가한 이유에 대해 설명하는 글을 썼다. 벤은 모든 버전의 파이어폭스에 메모리 누수가 있음을 시인함하였으며, 동시에 많은 사람들이 메모리 누수와 늘어난 메모리 사용량을 혼동하고 있다고 지적하였다. 파이어폭스 1.5는 최대 8페이지까지 최근 이용한 페이지의 내용을 기억하는데, 이는 시스템의 메모리 용량에 따라 좌우된다. 이 기능을 이용하지 않으면 메모리 이용량이 줄어들지만, 대신 뒤로/앞으로 가기 명령을 수행할 때 페이지 로드 시간이 늘어나게 된다.

원문: MozillaZine: Ben Goodger Explains Higher Memory Usage in Firefox 1.5

파이어폭스 1.5 의 메모리 이용량의 증가하는 것은 메모리 누수 현상 때문 보다는 뒤로, 앞으로의 웹 페이지 저장 기능 때문

벤 구저의 글을 읽어 보면 파이어폭스 1.5 의 메모리 이용량의 증가하는 것은 전적으로 파이어폭스의 메모리 누수 현상 때문인 것은 아니다. 모든 소프트웨어에는 메모리 누수(memory leak) 현상이 일어날 수 있고, 파이어폭스도 그런 문제가 있고, 전문가가 고쳤다고 한다. 메모리 이용량이 증가하는 것은 웹 페이지의 앞으로, 뒤로시 최대 8 페이지 까지의 웹 페이지를 메모리에 저장하기 때문이다.

게다가 파어어폭스는 탭 네비게이션을 하기 때문에 각 탭 마다 8개 페이지를 저정할 테니 메모리 사용이 클 수 밖에 없다.

작년 부터 사용하고 있는 오피스 12로 엑셀 파일을 임베드한 파워포인트 파일을 열 때에는 가상 메모리 까지 부족해 지는 현상은 겪고 있지만, 나는 아직 파이어폭스 1.5을 사용하면서 파이어폭스 때문에 메모리가 부족해 진것을 경험한 적은 없다.

파이어폭스 1.5의 웹 페이지 앞으로, 뒤로의 기능이 메모리를 사용한다

파이어폭스 1.5 의 (http://www.mozilla.com/press/mozilla-2005-11-29.html) 특징 중 하나는 브라우저의 한페이지 뒤로, 한페이지 앞으로 버튼 클릭시 1.0에 비해서 빠르게 페이지가 로딩되는 것이다.

Performance and Accessibility

  • Improved performance with a next-generation rendering and layout engine that speeds navigation between previously viewed Web pages through intelligent caching and displays complex Web pages more accurately.

1.5 스펙이 처음 나왔을 때에 나는 설마 메모리에 저장하리라는 것은 생각하지 못했다. 다만 렌더링 기술이 좋아 져서 더 빨리 렌더링을 하나 보다라고 생각했다. 그런데, 이 발표를 통해서 보니 방문한 페이지를 최대 8 페이지 까지 메모리에 저장하고 있어서 앞으로 뒤로 버튼 클릭할 때 빠르게 보였던 모양이다.

이 기능을 끄기 위해서는

브라우저의 주소 입력 창에 about: config 를 하고, browser.sessionhistory.max_total_viewers 가 -1 로 되어 있는 것을 0으로 고치면 된다.


사람들이 네비게이션한 페이지 중 39%는
주로 백 버튼을 이용해서 최근 방문한 10 페이지를 다시 방문한 것이다

파이어폭스 1.5에 웹 페이지 앞으로, 뒤로의 캐시 기능을 결정할 때 다음과 같은 연구 결과를 사용했다고 한다. 연구의 전문을 보고 싶지만 찾을 수는 없었다. 누가 알면 좀 알려주면 좋겠다. 일단 벤 구저의 코멘트에 달아 놓았다. 사람들이 웹 페이지를 방문할 때 자기가 방문한 페이지 중 39%는 이전에 방문했던 최근 10 페이지를 백 버튼를 이용해서 다시 방문한다고 한다.

studies show that 39% of all page navigations are renavigations to pages visited < 10 pages ago, usually using the back button

 

사람들은 웹 페이지를 네비게이션할 때 백 버튼을 이용하기 때문에 앞으로/뒤로의 빠른 로딩 기능이 결정되었다

처음에는 이 내용을 볼 때 한글 Mozilla 포럼 (http://forums.mozilla.or.kr) 에서 사람들이 메모리 문제를 많이 제기해서 궁금해서 읽어 보았다. 벤 로저의 블로그에 토론이 되는 것을 보면 오페라와 IE 7 과 비교에 대한 글들이 많다.

그런데, 벤 구저의 글을 읽다가 오히려 기술적인 측면 보다는 프로그래머들이 만드는 제품임에도 불구하고, 파이어폭스 1.5 의 앞으로, 뒤로의 빠른 네비게이션 기능이 사용자의 행동 데이타로 결정되었다는 것에 놀랐다.

 

To improve performance when navigating (studies show that 39% of all page navigations are renavigations to pages visited < 10 pages ago, usually using the back button), Firefox 1.5 implements a Back-Forward cache that retains the rendered document for the last few session history entries. This can be a lot of data. It’s a trade-off. What you get out of it is faster performance as you navigate the web.

사용자의 행동에 대한 연구와 그 현상 또는 문제를 극복하기 위해 해결책을 만드는 것은 어려운 일이다. 아니 문제의 인식 부터가 어려운 일이다.

파이어폭스 1.5의 앞-뒤 성능 향상 기능은 나 한테는 메모리 누수 현상 보다는 사용자 행동 데이타를 이용해서 사용자의 문제를 해결하기 위한 기능 노출의 예로 기억될 것 같다.

Related Post







Scroll Up