Как повысить производительность для Android / iOS / и т. Д. Для использования веб-службы?

1

Мы планируем проект. В основном у нас есть множество спокойных сервисов, сидящих на нашем сервере. Эти восстановленные службы возвратят XML как тип данных.

Мы будем создавать приложения на различных мобильных платформах, таких как Adroid/iOS/возможные другие. Приложение, возможно, потребуется часто звонить этим успокоительным службам.

Поскольку мы находимся на стадии планирования, мне интересно, знает ли кто-нибудь о производительности в отношении разных мобильных платформ. Например, на мобильных платформах мы предполагаем, что необходимо очень быстро возвращать данные. Мы можем сжимать данные по-разному для конкретной мобильной платформы. Или любые другие возможные различия, которые мы должны обратить внимание на эти мобильные платформы, когда они потребляют спокойную услугу?

Теги:
performance

4 ответа

1

Использовать формат данных JSON.

Он быстрее генерируется на вашем сервере, быстрее передается по сети и быстрее анализирует и потребляет на устройстве.

0

Худшая проблема заключается в самой полезной нагрузке: XML слишком раздутый. Каждому непустому тегу требуется 2 * N + 5 символов. Это боль и для синтаксического анализа, и для передачи. Гораздо лучше - полезная нагрузка JSON. Если вы не можете изменить производителей, создайте фасад для преобразования.

0

Я бы не стал слишком беспокоиться об этом раньше времени. Просто постарайтесь сохранить свою структуру данных достаточно эффективной, и если вы столкнетесь с измеримыми проблемами, тогда вы можете оптимизировать в это время. Общая производительность должна быть одинаковой на разных платформах.

Смотрите эту статью в Android о конструировании для производительности. Это дает хороший обзор.

0

При создании такой системы легко понять, как максимизировать работу, выполняемую на сервере, чтобы минимизировать объем работы, которая должна выполняться на каждом клиентском устройстве. Это не обязательно правильный путь.

В целом, смартфоны более мощные, чем программисты, как правило, придают им честь, и - как ПК, которые проводят большую часть своего времени, просто сидят там - их вычислительная мощность может быть недоиспользуемой. До тех пор, пока вы кодируете в основном здравомыслящий подход, смартфоны могут быстро анализировать большие объемы XML (в зависимости от вашей идеи "большой", конечно, например, из личного опыта я знаю, что дрянной 3-летний Blackberry может проанализируйте XML-документ размером 5 МБ всего за несколько секунд, но вы можете подумать, что 5 МБ невелики).

Если вы заходите слишком далеко по пути выполнения дополнительной работы на сервере, чтобы уменьшить рабочую нагрузку на устройстве, возможно, вы в конечном итоге перегрузите свой сервер, в то же время недоиспользуя мощь устройств. Имеет смысл сжать данные, возвращаемые из ваших веб-сервисов, чтобы уменьшить общий размер передаваемых данных, но тогда это предполагает, что не следует использовать XML в первую очередь.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню