Страницы

Поиск по вопросам

вторник, 31 декабря 2019 г.

JSON. Пределы возможного

#json #javascript #aspnet_mvc


Доброго времени суток, ув. сообщество. Перейду сразу к делу:

Какой максимальный объём JSON данных можно забрать с сервера? Неограниченно
Какой максимальный объём JSON данных можно забрать с сервера без вреда для него и
клента? Ограниченно железом
Какой максимальный объём JSON данных можно хранить на клиенте? 
Какой максимальный объём JSON данных можно хранить на клиенте без вреда для системы?
2 Гб ± ...
Как можно оптимизировать загрузку большого объёма данных(кроме Lazy loading)? Параллельная
загрузка
Как можно оптимизировать хранение большого объёма данных на клиенте(кэширование,
может Local Storage)?

Заранее благодарю всех откликнувшихься.
UPD: JSON Compression algorithms - что можете сказать об этом? Чепуха © @karmadro4

@rnd_d, данные я собираюсь рендерить, не все сразу конечно, но чтобы не тратить время
ещё и на загрузку этих данных, они мне нужны ввиде Backbone.Collection на клиенте
@AlexWindHope, на сколько мне известно, кол-во параллельных запросов на один домен
ограничено, в Opere например, по умолчанию стоит 16, но можно увеличить до 128, как
обстоят дела в других браузерах не знаю.    


Ответы

Ответ 1



Знаю что кто-то писал java софтину, где обрабатывали > 2гб json'a( что привело к необходимости фикса JSON парсера 4 java ). Так что юзать можно по полной. С учетом того, что в большинстве браузеров парсинг JSON реализован на нативном уровне - скорость тоже на уровне. Вообще если вы пишите приложение, где удобно было бы использовать json формат данных - стоит посмотреть в сторону noSQL документно-ориентированных бд (mongoDB, couchDB). По поводу хранения большего количества данных - Local storage + запрос вида - не поменялись ли данные(если поменялись, естественно, тянем новые), при желании можно придумать что-то посложнее и поинтереснее, но не думаю что в этом есть смысл, а если и будет - то это уже отдельный вопрос.

Ответ 2



Какой максимальный объём JSON данных можно забрать с сервера? Поскольку json это для начала всего лишь строка, а размер строки в js не ограничен то гипотетически можно передать сколько угодно. Проблема будет именно в парсинге этой строки на стороне клиента, время парсинга зависит от: аппаратной конфигурации, браузера(его рализации js), метода парсинга. То есть на мощной машине можно без проблема забрать 20 mb json'a и превратить их в js объект. На мобильнике эта же операция может запросто повесить браузер. Мне кажется вы прекрасно это понимаете и без меня, но не очень понятно почему у вас такой абстрактный вопрос о максимальном количестве данных на сферическом клиенте в вакууме. Кстати вот тут есть про максимальный размер кэша.

Ответ 3



UPD: JSON Compression algorithms - что можете сказать об этом? Чепуха. Это не алгоритмы и даже не сжатие, а просто представления с уменьшением избыточности. С вполне очевидными последствиями.

Комментариев нет:

Отправить комментарий