Сжатие XML в WebPage - PullRequest
       22

Сжатие XML в WebPage

0 голосов
/ 20 декабря 2008

Я передаю достаточное количество XML с сервера клиенту в моем приложении (250K-500K каждый раз).

Как мне сжать его на сервере и распаковать на клиенте, используя стандартный JavaScript? Возможно ли это?

Ответы [ 2 ]

2 голосов
/ 21 декабря 2008

Во-первых, ругань и возможные обходные пути. Во-вторых, возможное сумасшедшее решение.

Выговор

Если вы отправляете между клиентом и сервером 250 - 500 тыс. Назад и вперед, вы делаете это неправильно. Посмотрите на

  1. Запрашивать и отправлять только необходимую информацию

  2. Если в XML есть информация, которая меняется не часто, настройте свой веб-сервер для агрессивного http-кэширования для этих запросов. Кроме того, рассмотрите возможность отправки «не часто меняющейся информации» вместе с первоначальным запросом страницы, а не извлекайте ее с сервера

  3. Рассмотрите возможность отправки JSON вместо XML. JSON менее многословен, чем XML, и обычно занимает меньше места. Если вашему клиентскому коду необходим объект XML, восстановите его из только что загруженного JSON.

  4. Если вы используете apache, mod_deflate скопирует ваши данные клиенту, который может их принять. В прошлый раз, когда я изучал кодирование gzip на IIS, оно выполняло операции архивирования и разархивирования на диске, что быстро стало узким местом в ситуациях высокой нагрузки (YMMV) * ​​1021 *

Безумное решение

Если вы одержимы попыткой выполнить маршрут сжатия в javascript, алгоритм сжатия LZ77 был перенесен на большинство языков, , включая javascript .

Найдите аналогичный код для вашей серверной платформы, сожмите XML, а затем передайте его к коду, найденному по ссылке выше. Чтобы избежать проблем с кодированием, я бы попытался обернуть сжатые данные в XML или JSON при их отправке.

Производительность сжатия Javascript будет медленной. As.molasses, поэтому я не рекомендую этот маршрут.

1 голос
/ 20 декабря 2008

Передается ли этот тип HTTP?

Самый простой способ - посмотреть на сжатие на стороне веб-сервера.

XML Обычно сжимается очень хорошо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...