2013-12-12 3 views
1

Мы сейчас работаем над нашим Android-приложением, и на самом деле мы не довольны подключением к серверу и временем отклика. На нашем сервере есть Apache 2.2, и ответ на браузер занимает 0,3 секунды. Сервис хорошо оптимизирован для скорости и производительности.Android-приложение медленное подключение к серверу

Проблема, с которой мы столкнулись сейчас, - это стандартный клиент HTTP-соединения от Java на Android. Потребовалось 4 секунды, чтобы установить соединение с сервером, и после этого несколько минут для загрузки результатов. После этого у нас есть время разбора и время отображения. Все время как-то 5-6 секунд, что невозможно для приложения производительности, подобного нашему.

Мы заменили стандартный клиент HTTP-подключения с собственным клиентом подключения сокетов, и у нас было потрясающее воздействие. Время соединения и время загрузки теперь < 100 мс. Но теперь у нас есть проблема, что Volley (библиотека от Google) нуждается в 4 секундах для преобразования потока в массив байтов.

У кого-нибудь есть идея, что мы можем сделать, чтобы улучшить это преобразование?

P.S. существуют ли какие-то специальные настройки для Apache для ускорения подключения из приложения?

Благодаря Nik

+0

4 секунды, чтобы установить соединение звучит очень медленно, что не нормальный. не могли бы вы показать код? то же самое происходит в течение 4 секунд, чтобы преобразовать поток (хотя я не знаю, сколько данных вы получаете). проверьте это: http://stackoverflow.com/a/1264737/1096567 – Lovis

+0

Был ли тест браузера на том же устройстве Android с тем же подключением к Интернету? Вы используете Wi-Fi или 3G? Другие запросы имеют медленное время реакции или это просто ваш запрос? –

+0

В обоих случаях Wifi –

ответ

0

Если вам действительно нужно быстрое подключение вы можете взглянуть на SPY http://en.wikipedia.org/wiki/SPDY OkHTTP уже поддерживает, что на Android http://square.github.io/okhttp/

+0

Мы включили SPDY, спасибо за предложение. Сейчас мы тестируем предлагаемый OkHTTP. Я напишу вам, если будет хороший результат. –

+0

Ну, мы протестировали OkHTTP с SSL и без него. У нас такая же задержка. Есть ли что-то еще, что мы можем попробовать? Особенно, когда мы нюхаем запрос на сервер, мы становимся: дублированный ack и TCP Retransmission ...!?! –

Смежные вопросы