2011-04-14 5 views
3

서버에서 생성 된 JSON 파일을 매 5 분마다 당깁니다 (현재 약 10KB 크기가 생산에 들어갈수록 커질 것입니다). 일단 파일을 가져 오면, 데이터를 플러그인해야하는 다양한 Javascript 시각화 API가 있습니다.자바 스크립트 프런트 엔드 대 C 백엔드 성능

내 백엔드는 C 언어로되어 있으며 시각화를 위해 Jquery/Javascript를 사용하고 있습니다.

다음 두 가지 접근 방식이 있습니다. 1. a. 5 분마다 서버에서 전체 JSON 데이터 (> 8KB)를 가져옵니다. b. Javascript를 사용하여 데이터를 분석하고 Javascript API의 요구 사항에 따라 필요한 정보를 추출합니다. (다른 시각화 API에서는 정보의 다른 하위 집합이 필요합니다.) c. 시각화 표시

또는 a. 백엔드 자체의 데이터를 처리하고 Javascript API의 정보를 추출하여 백엔드 에 저장합니다. b. 각 자바 스크립트 api가 독립적 인 Ajax 호출을하고 자신의 데이터를 가져와 표시하도록하십시오.

제 질문은 위의 두 가지 접근 방식 중 어느 것이 더 빠른 결과를 산출 할 것인가입니다. 이 경우 C의 백엔드는 자바 스크립트의 프론트 엔드보다 빠르다.

답변

0

나는 무엇을 하려는지 명확하지 않다. 어느 쪽이든, 저는 비즈니스 로직이 서버에 포함되어야한다고 생각합니다. 프리젠 테이션 로직 (jQuery/javascript 또는 사용중인 라이브러리)은 클라이언트에서 엄격하게 실행되어야합니다.

2

유일한 방법은 두 가지 방법을 벤치마킹하는 것입니다. 확실한 답을 얻기에는 너무 많은 변수가 관련되어 있습니다.

사용중인 브라우저는 클라이언트 측에서 소요되는 시간과 차이가 날 수 있으므로 지원해야하는 대상에 따라이를 염두에 두어야합니다.

구문 분석해야하는 데이터 구조가 복잡해지면 클라이언트 측 성능이 달라질 수 있습니다.

각 사용자에 대해 데이터가 동일하면 서버의 구문 분석 및 캐싱에 흔들릴 수 있습니다. 그것이 다른 경우 클라이언트가이를 처리하도록 할 수 있습니다.

0

두 번째 접근 방법은 더 빠를 것입니다. "각 자바 스크립트 api가 자신의 데이터를 가져 오도록하십시오."라고 말한 이후에 접근 방식 1은 클라이언트를 필요한 것보다 많이 보내는 것으로 나타납니다.

0

플러그인의 요청 수에 따라 다릅니다. 계산을 할 필요가없고 모든 호출이 첫 번째 호출에서 완료되고 작업이 모든 데이터 조각이 어디로 가야 하는지를 정의하는 경우 옵션 1이 가장 빠릅니다. 요청은 비쌉니다.

반면에 자바 스크립트에서 값을 계산할 경우 계산의 정도에 따라 다릅니다. 이 경우 벤치 마크를 수행하는 것이 더 좋습니다.

첫 번째 방법에서는 병목을 계산합니다. 두 번째로 네트워킹/클라이언트의 브라우저 속도에 소비 된 시간입니다.

모든 결과를 하나의 JSON 결과로 그룹화하고이를 플러그인에 전달하는 것을 고려하십시오.

서버에서 처리하는 경우 캐시를 사용하여 처리 시간을 단축 할 수 있습니다 (사용하는 알고리즘/데이터 소스의 종류에 따라 달라질 수 있습니다)

희망, 행운을 빕니다! :-)

0

알아 두어야 할 점은 특정 설정이이 시스템의 성능에 더 많은 영향을 미치므로 가장 확실한 방법은 두 가지 방법 모두를 벤치마킹하는 것입니다. 즉, C와 같은 컴파일 된 언어는 JavaScript와 같은 해석 언어보다 항상 빠를 것입니다.

관련 문제