2012-06-05 2 views
1

데이터를 제 3 자에게 보내기 위해 HTTPRest 포스트 콜을하고 있는데, 내 데이터가 3 천만에서 1000 만에 이르며, 인증을 위해 사용자 이름과 비밀번호와 함께 요청 당 하나의 레코드 만 보낼 수 있습니다. 타사에서 지정된Httprest 성능 향상

내가 사용하고

샘플 코드는 각

public static void main(String[] args) { 

    try { 

    DefaultHttpClient httpClient = new DefaultHttpClient(); 
    HttpPost postRequest = new HttpPost(
     "http://localhost:8080/RESTfulExample/json/product/post"); 

    StringEntity input = new StringEntity("{\"qty\":100,\"name\":\"iPad 4\"}"); 
    input.setContentType("application/json"); 
    postRequest.setEntity(input); 

    HttpResponse response = httpClient.execute(postRequest); 

    if (response.getStatusLine().getStatusCode() != 201) { 
     throw new RuntimeException("Failed : HTTP error code : " 
      + response.getStatusLine().getStatusCode()); 
    } 

    BufferedReader br = new BufferedReader(
        new InputStreamReader((response.getEntity().getContent()))); 

    String output; 
    System.out.println("Output from Server .... \n"); 
    while ((output = br.readLine()) != null) { 
     System.out.println(output); 
    } 



    } catch (MalformedURLException e) { 

    e.printStackTrace(); 

    } catch (IOException e) { 

    e.printStackTrace(); 

    } 

} 

그것이 약 6 초 걸리는 요청하고 난 1000 만 개 기록을 위해 계산하는 경우는 어떤 하나 제안 해주십시오 수 시간이 걸릴 것입니다 나 성능을 향상시킬 수있는 방법은 무엇입니까 ?? 써니 사전 에서

감사

답변

1

첫째, 하나 개의 요청이 6 초 걸리는 경우, 1000 만 개 기록 115 일이 소요됩니다. 따라서 멀티 스레드 기술을 사용하여 성능을 향상시키기 전에 응답 시간을 6 초에서 수백 밀리 초로 줄여야합니다.

1

사용 This code 이 등등 WebResource 같은 잭스 API의 클래스의 사용을 사용하고 있기 때문에 REST 를 호출하는 동안이

+0

친애 인 Yogesh, 당신 – Suresh

+0

친애 인 Yogesh보다, 응답을 주셔서 대단히 감사합니다 .... 성능을 향상시킬 것입니다, jercy 1.4 .jar가 포함되어 있지만 컴파일 오류가 발생합니다. 그것은 1.5로 작동합니까 ??? 버전 오류가 나타납니다. – Suresh