2013-03-06 1 views
2

JavaScript 애플리케이션이 있는데 제대로 작동하지만 확실히 Google 메모리 맵을 기반으로하는 일부 메모리/CPU 성능이 필요합니다.JavaScript : 런타임 (일명 브라우저)의 성능을 확인하는 방법은 무엇입니까?

기본적으로 데스크톱/노트북 PC에서는 정상적으로 실행되지만 iPad는 정상적으로 작동합니다. 그러나 요즘에는 이러한 모든 종류의 장치로 인해 장치가 과부하가됩니다.

기본적으로 사용할 수있는 런타임을 결정하고 JavaScript 응용 프로그램을 시작할지 아니면 메시지를 표시할지 결정해야합니다.

  1. OK, 나는 브라우저를 확인할 수 있습니다, 그러나 이것은 끝없는 이야기
  2. 나는 OS 정보를 확인할 수 있지만, 다시는 매우 지루한입니다. 또한 일부 OS는 고성능 장치 및 저가형 하드웨어에서 실행됩니다.
  3. 나는 화면의 크기에 확인하고 휴대폰을 배제하지만, 그것은

그래서 클라이언트의 성능을 결정하는 방법이 어려운 얻을 수 있을까? 그냥 명확하게하기 위해 예를 들어 태블릿인지 여부는 신경 쓰지 않지만 CPU 성능/메모리가 적은 성능이 낮은 태블릿 인 경우 (Detect phone/tablet/web client using javascript는 도움이되지 않습니다).

+3

사이트의 기본 기능 수준을 나타내는 간단한 테스트/기능을 실행할 수 있습니다. 시작 시간과 완료 시간을 모니터링하십시오. 기간을 결정하고 그 기간에 따라 느리게, 정상적으로 또는 빠르게 실행되는지 여부를 결정하십시오. –

+0

나는 다음과 같은 것을 테스트했다. 앱이 시작될 때를 측정하고 주어진 시간 후에 특정 지점에 도달하지 않으면 멈춘다. 안타깝게도 비동기 호출의 특성 및 처음에는 일부 행거 때문에 (false alarm) 매우 안정적이지 않습니다. 또한이 개념에는 다음이 없으며 선행이 아닌 "후행"로딩을 검사합니다. 하지만 수표를 수정해야 할 수도 있습니다. –

+1

이것은 적어도 몇 번 전에 물어 보았습니다 (예 : [here] (http://stackoverflow.com/questions/4734518/whats-the-best-way-to-determine-at-runtime-if-a- 브라우저는 너무 천천히 ~ 우아한)). 기존 답변이 낡았 고 (상황이 변함) 매우 만족스럽지 않기 때문에 아직 중복으로 투표하지 않겠습니다. 또한 몇 가지 새로운 요인 (Google지도, iPad에서 테스트)을 던집니다. –

답변

1

자바 스크립트에서 기능 목록을 확인하고 그 결과에 따라 기기의 메모리가 부족한 경우 결론을 내릴 수 있습니다.

예를 들어 :

  1. 확인 코어는 window.navigator.hardwareConcurrency 으로 계산

  2. 확인 WebGL을 지원 (내가 user2070775 제안처럼) (더 나은 보험을 Core Estimator polyfill 추가) : Proper way to detect WebGL support?

  3. 데스크톱인지 모바일인지 확인합니다. 대부분의 데스크탑은 메모리에 아무런 문제가 없습니다.

  4. 화면의 해상도를 확인하십시오. 작은 해상도는 메모리가 부족할 가능성이 높습니다.

관련 문제