Быстрее ли загружать XML сразу или по крупицам? - PullRequest
1 голос
/ 24 декабря 2010

Здесь возникает быстрый вопрос: быстрее ли загрузить большой файл XML (всего один элемент в строке), около 50 000 элементов, и проанализировать его на стороне клиента с помощью JavaScript (я пытаюсь найти строки, которые соответствуют диапазон дат), или PHP быстрее выполняет предварительный анализ и отправляет его клиенту по мере необходимости? Дело в том, что PHP-запрос будет выполняться примерно раз в секунду, что выглядит немного за борт - я пытаюсь загрузить точки на карту, ожидаю, что в каждом диапазоне дат будет около 2000 точек.

Спасибо!

Ответы [ 3 ]

2 голосов
/ 24 декабря 2010

Если вы будете каждую тысячу результатов возвращать клиенту каждую секунду, у вас будут проблемы с производительностью ... Тем не менее, если вы отправляете много данных через AJAX, я бы рекомендовал использовать JSON вместо этого, так как их намного меньше.накладные расходы / контент для отправки по сети.

Вы также упомянули фильтрацию на сервере ... Определенно отфильтруйте все, что вам не нужно отправлять ... До тех пор, пока вам не понадобится отправить его.

1 голос
/ 24 декабря 2010

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

В любом случае, кэширование очень поможет, если вы ожидаете более одного пользователя в день, и вам следует отправлять данные клиенту, используя очень облегченный формат(JSON, вероятно, лучшая ставка), чтобы минимизировать потерянную пропускную способность.

0 голосов
/ 24 декабря 2010

Это зависит. В этом случае я бы предложил вам измерить.

...