2013-05-07 6 views
2

Быстрый вопрос:Лучший способ передать результат запроса на другую страницу

У меня есть страница, которая делает вызов AJAX на мой SQL-сервер и получает ответ XML. Я разбираю XML и показываю соответствующие данные в таблице.

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

GET может занять до 2,5 секунд, при этом окончательное время графика составляет около 8-9 секунд. Я изучаю любые альтернативы повторной отправке данных.

До сих пор у меня есть:

  • LocalStorage (HTML5)
  • PHP передать мне данные вместо запрашивая DB
  • JQuery плагин (DOMCache)

Любые мысли по этому поводу или передовой практики?

благодарит для любого входа!

+0

Вы используете локальное хранилище. Полагаю, вы хотите, чтобы данные были повторно использованы в течение длительного времени? Я думаю, здесь дни. Потому что, если он недолговечен, использование локального хранилища загромождает пользовательское хранилище. Для коротких вещей я предпочитаю использовать сеанс пользователя, на стороне сервера. Назначьте идентификатор GUID для ключа, если пользователь может отображать многие из этих таблиц на разных вкладках и вытеснять данные через некоторое фиксированное время. – Renan

+1

вы можете построить и json-объект, используя javascript, затем подстройте объект и передайте его через переменную POST на ваш сервер, а затем на новой странице вы можете визуализировать декодирование объекта javascript и отображать информацию. – ncubica

ответ

2

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

IE8 + на самом деле является королевским замком в этой области (как я ненавижу признаться в этом). Его агрессивное кэширование аякс-ответов обычно является серьезной болью в заднице, но в этом случае окажется ценным для вашего сценария.

Редактировать - Вы упомянули SQL Server, поэтому я исхожу из предположения, что вы используете средний уровень ASP.NET. Если это так, here's an interesting article при кешировании запросов ajax на сервере и клиент с .NET framework.

Смежные вопросы