2013-06-10 2 views
0

그런 문제가 있습니다. 클라이언트 (그냥 웹 페이지)와 서버 (클라이언트에서 요청을 처리하는 일부 Java 컨트롤러)가 있습니다.Java : POST/GET 요청의 대역폭 측정

1) 클라이언트가 서버에 API 요청 (POST 또는 GET)을 보내고 JSON 형식의 응답을받습니다.

2) 서버가 클라이언트로부터 요청을 받았을 때 통계 정보 (사용자 ID, 타임 스탬프, API 요청 유형 등)를 DB에 API 요청을 저장합니다. 또한이 API 요청의 Bandwidth/ConnectionSpeed를 저장해야합니다.

질문 :이 문제를 해결하는 방법에 대한 아이디어 나 제안이 있으십니까?

답변

0

Java의 관점에서는 쉽지 않을 것입니다. 요청을 받았을 때와 사용자에게 응답을 반환 할 때를 모니터링 할 수 있습니다. JSON String의 크기를 저장하고 계산할 수도 있지만 JSON String과 관련하여 서버의 최종 처리량을 측정하기 때문에 제한된 정보 일뿐입니다. 이는 서버 네트워크 조건뿐만 아니라 현재 서버 성능 및 클라이언트 성능 기능과도 관련됩니다.

일부 OS 관련 도구를 사용하여 일부 패키지를 냄새를 맡으려고 시도하고 데이터베이스에 추가하지만 API가 응용 프로그램 내부에서 수행되지 않을 수도 있습니다. 패키지 (즉, 각 JSON 문자열에는 고유 한 ID가 있어야합니다).

또 다른 옵션은 아키텍처를보고 SW 및 HW 구성 요소가 어떤 것인지 확인하는 것입니다. 일부 (역방향) 프록시 서버 또는로드 균형 조정기가 필요한 정보를 제공 할 수 있습니다.

+0

좋은 아이디어 ...하지만 우리는 전통적인 대역폭 계산을 사용하기로 결정했습니다. 사용자가 API 세션을 설정하면 (단지 사람) 작은 파일을 보내고 응답 타일을 계산합니다. 하지만 어쨌든 좋은 아이디어 ... thnx – Lugaru

관련 문제