문제

최근 Ubuntu Hardy Heron의 Firefox 3에 문제가 발생했습니다.

링크를 클릭하면 잠시 동안 정지됩니다.Firefox 3의 버그인지 아니면 너무 많은 클라이언트 측 JavaScript를 실행하는 페이지인지는 모르겠지만 조금 시도해 보고 디버깅하고 싶습니다.

그래서 제 질문은 "Firefox 3용 프로세스 탐색기나 작업 관리자 같은 것을 가질 수 있는 방법이 있습니까?"입니다.

해당 페이지(또는 CPU/메모리 사용량을 유발하는 페이지의 모든 항목)의 JavaScript를 통해 어떤 탭이 내 프로세서의 몇 퍼센트를 사용하고 있는지 확인하고 싶습니다.

이 기능이나 이와 유사한 플러그인을 아는 사람이 있나요?이런 종류의 검사를 다른 방법으로 수행한 사람이 있습니까?

FireBug에 대해 알고 있지만 어떤 탭이 많은 리소스를 사용하고 있는지 파악하는 데 이를 어떻게 사용할지 상상할 수 없습니다.

어떤 제안이나 통찰력이 있습니까?

도움이 되었습니까?

해결책

아마도 멋진 firefox3 fsync "버그", 이는 거대한 실패 더미입니다.

요약하자면

  • Firefox3은 북마크와 기록을 SQLite 데이터베이스에 저장합니다.
  • 페이지를 로드할 때마다 이 데이터베이스에 여러 번 기록됩니다.
  • SQLite는 북마크를 잃지 않도록 주의를 기울이기 때문에 글을 쓸 때마다 커널에 데이터베이스 파일을 디스크에 플러시하고 완전히 기록되었는지 확인하도록 지시합니다.
  • 많은 Linux 변종에서는 그런 식으로 플러시하라는 지시를 받으면 모든 파일을 플러시합니다.디스크를 많이 사용하는 작업을 수행하는 백그라운드 작업이 있는 경우 이 작업은 최대 1분 이상 걸릴 수 있습니다.
  • 커널은 이러한 플러시가 발생하는 동안 Firefox를 기다리게 하여 UI를 잠급니다.

다른 팁

그래서 제 질문은, Firefox 3용 프로세스 탐색기나 작업 관리자 같은 것을 가질 수 있는 방법이 있느냐는 것입니다.

Firefox가 구축된 방식으로 인해 현재는 이것이 불가능합니다.그러나 새로운 Internet Explorer 8 베타 2와 방금 발표된 Google Chrome 브라우저가 그런 방향으로 가고 있으므로 Firefox도 그 방향으로 갈 것이라고 생각합니다.

다음은 게시물입니다( Google 크롬 프로세스 관리자 ), Mozilla의 John Resig와 이 주제에 대한 jQuery 유명인이 작성했습니다.

Firefox에는 "프로세스 탐색기" 종류의 도구가 없습니다.하지만 거기에는 http://developer.mozilla.org/en/docs/Venkman 프로파일링 모드를 사용하면 크롬(웹 페이지가 아닌 콘텐츠가 아닌 것을 의미) 스크립트에서 소요된 시간을 확인하는 데 사용할 수 있습니다.

내가 읽은 바에 따르면 DTrace는 이런 종류의 작업에도 유용할 수 있지만 사용자 지정 빌드를 만들고 소스에 추가 프로브를 추가해야 할 수도 있습니다.나는 아직 그것을 직접 가지고 놀지 않았습니다.

거기에 이에 대한 철저한 논의 이는 FF 3.0 이전 버전에 영향을 준 모든 fsync 관련 문제를 설명합니다.일반적으로 그 이후에도 이러한 동작을 본 적이 없으며 시스템이 IO 집약적인 작업을 수행하지 않는 경우에는 전혀 문제가 되지 않습니다.Firebug/Venkman은 훌륭한 디버거를 만들지만 다른 사람의 코드인 IMO에 대한 이러한 종류의 문제를 파악하는 데는 고통스럽습니다.

또한 Firefox에서 탭으로 CPU 사용률을 쉽게 확인할 수 있는 방법이 있었으면 좋겠습니다. FF가 CPU를 100% 소모하는 경우가 종종 있지만 어느 부분이 문제를 일으키는지 전혀 알 수 없기 때문입니다.

XUL 프로파일러 확장 기능과 클라이언트 측 JS가 CPU 측면에서 완전히 사라졌음을 지적할 수 있는 멋진 확장 기능입니다.탭 단위로 작동하지 않고 스크립트 단위로 작동합니다.일반적으로 해당 .js 스크립트를 탭이나 확장 프로그램에 직접 연결할 수 있습니다.

Google Chrome에는 탭, 확장 프로그램, 플러그인별로 메모리와 CPU 사용량을 제공하는 정말 훌륭한 작업 관리자가 내장되어 있다는 점도 언급할 가치가 있습니다.

[XUL 프로파일러]는 자바스크립트 프로파일러입니다.각 방법에서 그래프로서 경과 시간을 보여주고 브라우저 캔버스 영역은 코드의 CPU 덩어리 소비를 추적하는 데 도움이됩니다.

XUL 및 페이지 컨텍스트에서 모든 JS 호출 및 페인트 이벤트를 추적합니다.캔버스 구역이 다시 그려진 캔버스 구역을 동적으로 보여주는 애니메이션을 만듭니다.

FF 3.6.10부터는 더 이상 호환되는 것으로 표시되지 않는다는 점에서 최신 상태가 아닙니다.하지만 여전히 작동하며 똑같이 멋진 기능으로 비호환성을 무시할 수 있습니다. MR 기술 툴킷 확장.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top