2012-04-26 2 views
2

Я работаю с веб-приложением, которое действительно голодно в памяти, потому что исходные кодеры ставят на клиентскую часть бизнес-логики (JavaScript, jQuery). Таким образом, происходит сбой веб-браузеров из-за нехватки памяти, когда пользователи работают со многими объектами в приложении.Уменьшение объема памяти существующей веб-страницы

Перемещение бизнес-логики на серверную сторону не является краткосрочным вариантом. Таким образом, я искал в сети идеи для , как быстро уменьшить объем памяти существующей веб-страницы, но вышел с пустыми руками.

Есть общие советы? (Например, может ли сокращение имен переменных JavaScript привести к значительному улучшению?)

+0

Нашел интересную статью по адресу http://royal.pingdom.com/2011/11/21/web-pages-getting-bloated-here-is-why/, обсуждая увеличивая размер веб-страниц. – Gruber

ответ

1

Это очень широкий вопрос, поскольку мы не можем видеть код Javascript, который выполняет эту бизнес-логику. Я надеюсь, что этот веб-сайт размещен в контролируемой среде, потому что очевидно, что блокировщики сценариев/только что отключенные javascript сделали бы его бесполезным. Я полагаю, что некоторые вещи следует предложить:

  1. Имейте все ваши Javascript в одном файле .js и уменьшите его. Вы не сделали бы этого с версией разработки, только производственная версия, как мини-файл, сделает ее совершенно незаметной - см. http://code.google.com/p/minify/ для получения дополнительной информации. Наличие всего вашего Javascript в одном файле уменьшит количество HTTP-соединений, которые клиент должен выполнить, чтобы загрузить скрипты.

  2. Имейте свои метки SCRIPT в нижней части страницы, а не вверху. Это улучшит время рендеринга для клиента (однако это не уменьшит использование памяти, поскольку код все еще существует). Анализ блоков SCRIPT блокирует браузер до тех пор, пока он не завершится, он не сможет загрузить эти асинхронно.

Есть довольно много способов, которыми Вы могли бы улучшить это без необходимости переписывать все это - хотя я бы, конечно, смотреть на рефакторинга как «общее решение» этой проблемы. Я в основном извергаю советы из этой статьи http://developer.yahoo.com/performance/rules.html

+0

Большое спасибо за советы. Мини-код JavaScript, безусловно, хороший совет! – Gruber

+0

Браузер хранит страницы, которые он получает в памяти дословно? Это не минимизирует его или хранит как EXI или что-то еще? – Zaz

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