안녕하세요.
제가 아래 코드와 같이 Httpclient 요청 후 JSON데이타를 받아와 처리하는 함수를 만들어서
사용하고 있습니다. 근데 어떤 데이타는 가끔씩 만건이상의 데이타를 처리를 해야 하는데 
너무 느려서 문제입니다. 웹으로  url을 날려서 확인해 보니 금방 나오는걸로 봐선는
디비가 느려서 그런거 같진 않습니다.

첨엔 3G로 해서 그런가보다라고 생각해 봤는데 스마트폰 웹브러우저로 해도 어플보다는 빠릅니다.

코드에서 확인해 보니 Inputstream을 string으로 바꾸는데 시간이 많이 드는걸로 생각됩니다.
해결책이 없을 까요?

smart ranking 어플 처럼 일정 건수만 불러오고 스크롤이 아래로 내려오면 다음 데이타를 가져오는 것도
괜찮을거 같은데 이건 어떻게 구현을 해야 할지 잘 모르겠습니다.

 	public void getHttpClientToData() {
		
		//1. 핸들러 생성
		final ResponseHandler<String> responseHandler = new ResponseHandler<String>() {
			
			public String handleResponse(HttpResponse response)
			throws ClientProtocolException, IOException {
				int result = response.getStatusLine().getStatusCode();
				//응답을 제대로 받아오면... 
				if(result == HttpStatus.SC_OK) {
					HttpEntity entity = response.getEntity();
					InputStream in = entity.getContent();
					String parsingData =  Util.convertStreamToString(in, charset);
					
					Bundle bundle = new Bundle();
					bundle.putString("parsingData", parsingData);
					Message message=handler.obtainMessage();
					message.setData(bundle);
					handler.sendMessage(message);
				}
				return null;
			}
		}; //End of ResponseHandler
		//2. 쓰레드 생성
		// 서버에 HTTP 처리 요청은 새로운 스레드를 생성하여 비동기식으로 처리하는것이 효율적이다.
		new Thread() {
			public void run() {
				HttpClient client = new DefaultHttpClient();
				//응답시간이 5초가 넘으면 timeout 처리하려면 아래 코드의 커맨트를 풀고 실행한다.
				HttpParams params = client.getParams();
				HttpConnectionParams.setConnectionTimeout(params, 60000);
				HttpConnectionParams.setSoTimeout(params, 60000);
				// HTTP를 통해 서버에 요청을 전달한다.
				// 요청에 대한결과는 responseHandler의 handleResponse()메서드가 호출되어 처리한다.
				// 서버에 전달되는 파라메터값을 인코딩하기위해 UrlEncodedFormEntity() 메서드를 사용한다.
				try {
					HttpPost httpPost = new HttpPost(url);
					UrlEncodedFormEntity entity = new UrlEncodedFormEntity(nvps, "UTF-8");
					httpPost.setEntity(entity);
					
					client.execute(httpPost,responseHandler);
				}catch (Exception e) {
					stop();
				}
			} //End of run()
		}.start(); //End of Thread
	} //End of getHttpClientToData()
    /* Util 클래스*/
	public static String convertStreamToString(InputStream is, String charset) throws IOException {
     	
     	if (is != null) {
     		
     		StringBuilder sb = new StringBuilder();
     		String line;
     		 
     		try {// , "UTF-8"
     			BufferedReader reader = new BufferedReader(new InputStreamReader(is, charset));
     			while ((line = reader.readLine()) != null) {
     				sb.append(line).append("\n");
     			}
     			
     		} finally {
     			is.close();
     		}
     		
     		return sb.toString();
     		
     	} else {
     		return "";
     	}
     }