2013-12-12 4 views
1

Google은 현재 Android 앱을 사용하고 있으며 실제로 서버에 대한 연결 및 응답 시간에 전혀 만족하지 않습니다. 우리 서버에는 Apache 2.2가 있으며 브라우저를 통한 응답에는 0.3 초가 걸렸습니다. 이 서비스는 속도와 성능에 맞게 최적화되어 있습니다.Android 앱이 서버에 느리게 연결됨

우리가 지금 가지고 있던 문제는 안드로이드의 Java에서 온 standart HTTP 연결 클라이언트입니다. 서버에 연결을 설정하는 데 4 초가 걸렸고 결과가 다운로드 되려면 몇 초가 걸렸습니다. 그 후 파싱 시간과 표시 시간이 있습니다. 전체 시간은 어떻게 든 5-6 초입니다. 우리와 같은 성능 앱에는 불가능합니다.

우리는 standart HTTP 연결 클라이언트를 자체 소켓 연결 클라이언트로 대체했으며 우리는 놀라운 영향을 미쳤습니다. 연결 시간과 다운로드 시간은 이제 < 100ms입니다. 그러나 이제는 Volley (Google의 라이브러리)가 스트림을 바이트 배열로 변환하는 데 4 초가 필요하다는 문제가 있습니다.

누구나 우리가이 변환을 개선하기 위해 할 수있는 아이디어가 있습니까?

P. 아파치가 응용 프로그램과의 연결을 더 빠르게하는 특별한 설정이 있습니까?

감사 닉

+0

사초를 것을 지원하고있다는 아니에요, 정말 느린 소리 표준. 코드를 보여줄 수 있습니까? 스트림을 변환하는데도 4 초가 걸립니다 (받는 데이터의 양은 모르지만). http://stackoverflow.com/a/1264737/1096567 – Lovis

+0

동일한 인터넷 연결을 사용하여 동일한 Android 기기에서 브라우저 테스트를 했습니까? WiFi 또는 3G를 사용하고 있습니까? 다른 요청은 반응 시간이 느리거나 요청한 것입니까? –

+0

두 경우 모두 Wifi –

답변

0

당신이 정말로 빠른 연결을해야 할 경우 SPY http://en.wikipedia.org/wiki/SPDY OkHTTP을 살펴 수 이미 연결을 설정 안드로이드에 http://square.github.io/okhttp/

+0

SPDY를 사용하도록 설정해 주셔서 감사합니다. 이제 제안 된 OkHTTP를 테스트합니다. 나는 좋은 결과가 오면 당신을 쓸 것입니다. –

+0

우리는 SSL없이 OkHTTP를 테스트했습니다. 우린 같은 지연이있어. 우리가 시도할만한 것이 있습니까? 특히 우리가 서버에 요청을 스니핑하면 다음과 같이됩니다 : 중복 된 ACK 및 TCP 재전송 ...!?! –