Как я могу ускорить Рестлет для Android при использовании OData? - PullRequest
1 голос
/ 04 октября 2010

Я пытаюсь использовать Restlet для Android для запроса источника данных OData.Однако меня не впечатляет его производительность как в эмуляторе, так и на реальном устройстве.У меня есть запросы, сделанные в обертке AsyncTask, чтобы сделать интерфейс отзывчивым, но все же требуется более 1 минуты, чтобы наконец вернуть объекты.*

Что я могу сделать, чтобы ускорить запросы?

Ответы [ 2 ]

4 голосов
/ 18 октября 2010

Check odata4j - http://odata4j.org Это альтернативная библиотека odata для java, включая совместимый с Android клиент API.

Мы только что выпустили простой пример Android-клиента в нашей версии 0.3. Этот пример демонстрирует эффективный способ синтаксического анализа / разбивки на страницы службы произвольных данных.

Наряду с управляемой сервисом подкачкой страниц (упомянутой Алексом) мы используем эффективную реализацию парсера xml pull для анализа полезных данных odata (мы обнаружили, что активность кучи / GC является самым большим узким местом перфорации на Android).

0 голосов
/ 05 октября 2010

Я знаю, что это не поможет вам в работе библиотеки RESTlet ... но:

Одна вещь, которую нужно учитывать, - это использование Service Driven Paging . Обратите внимание, что это отличается от $ top и $ skip (иначе говоря, управляемой клиентом подкачки страниц), потому что страницы сервера, даже если клиент их не запрашивает

SDP особенно полезен, когда клиент выполняет нефильтрованный запрос для большого набора данных.

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

...