Использование jQuery для анализа большого набора данных по категориям и подкатегориям - PullRequest
2 голосов
/ 23 ноября 2010

Я нахожусь на ранних стадиях веб-проекта, который будет включать очень большой (5000+) набор категорий, подкатегорий и подкатегорий, которые необходимо загрузить в HTML-форму.

Я рассматриваю хранение данных в файле XML и затем использую jQuery для загрузки в форму, , и получаю подкатегории только при запросе (любые способы оптимизировать это ??).Я использую Zend Framework, поэтому я подумал, что загрузка из базы данных MySQL каждый раз сильно замедляет работу приложения.

Мой вопрос: будут ли какие-либо недостатки этого метода, особенно?как списки категорий необходимо ссылаться в базе данных SQL?

Большое спасибо,

Адам

Ответы [ 2 ]

0 голосов
/ 23 ноября 2010

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

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

0 голосов
/ 23 ноября 2010

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

  1. Используйте JSON вместо XML.XML может занять больше пропускной способности, а будет анализироваться дольше, особенно при таком огромном наборе данных
  2. Кэшировать файл на сервере и повторно генерировать накаждая запись, если вы не ожидаете больше записей, чем чтения, это значительно повысит производительность
  3. Для большей отзывчивости на стороне клиента вы можете загружать данные только при необходимости, для этого вы можете развернуть файловую структуру на сервере, поэтомувам нужно иметь подкаталоги, которые затем содержат файлы подкатегорий .json и т. д. Таким образом, вы можете минимизировать данные, передаваемые клиенту, вы также можете оптимизировать кэширование, чтобы воссоздавать только измененные части дерева.

Ваша главная задача здесь, вероятно, должна заключаться во внешнем интерфейсе, поскольку загрузка 5000+ категорий в форму за один раз займет очень очень много времени, поэтому большинство структур на заднем конце предназначены только для ускорения клиента,База данных и Zend должны самостоятельно позаботиться о нормальном кэшировании.

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