Я отправляю относительно много данных из мобильного приложения (до 1000 объектов JSON), которые я обычно кодировал бы следующим образом:
[{
id: 12,
score: 34,
interval: 5678,
sub: 9012
}, {
id: ...
}, ...]
Я мог бы сделать полезную нагрузку меньше, отправив массив массивов:
[[12, 34, 5678, 9012], [...], ...]
чтобы сохранить некоторое пространство в именах свойств и воссоздать объекты на сервере (поскольку схема исправлена или, по крайней мере, это контракт между сервером и клиентом).
Полезная нагрузка затем отправляется в запрос POST
, скорее всего, через соединение 3G (или может быть Wi-Fi).
Похоже, что я сохраняю некоторую пропускную способность с помощью вложенных массивов, но я не уверен, что это заметно при применении gzip, и я не уверен, как точно и объективно измерить разницу.
С другой стороны, вложенные массивы не кажутся хорошей идеей: они менее читаемы и, следовательно, сложнее обнаружить ошибки при отладке. Кроме того, поскольку мы очищаем читаемость в унитазе, мы можем просто сгладить массив, поскольку каждый дочерний массив имеет фиксированное количество элементов, сервер может просто нарезать его и снова восстановить объекты.
Любые дополнительные материалы для чтения по этой теме очень ценятся.