Как оптимизировать время загрузки Dojo?

Я работаю над бизнес-приложением, построенным на наборе инструментов PHP и Dojo. Интерфейс похож на тот, что вы видите в тестере темы dojo dijit.

В Интернете требуется много времени, чтобы загрузить все эти js один за другим.

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

Мне интересно узнать лучшие практики по оптимизации времени загрузки?


person Krunal    schedule 01.04.2012    source источник
comment
stackoverflow.com/questions/9640757/   -  person Craig Swing    schedule 01.04.2012


Ответы (1)


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

Выполнение пользовательской сборки даст вам значительный прирост производительности — сотни циклов будут сокращены до одного или двух, а размер полезной нагрузки также значительно уменьшится. Мы увидели 50-кратное улучшение производительности с пользовательской сборкой.

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

http://dojotoolkit.org/reference-guide/1.7/build/index.html#build-index http://dojotoolkit.org/reference-guide/1.7/build/pre17/build.html#build-pre17-build

Хотя поначалу это выглядит устрашающе, сядьте с ним, и вы сможете создать оптимизированную версию и увидеть преимущества :)

person Vijay Agrawal    schedule 01.04.2012
comment
Спасибо, Виджай, это помогло мне сократить время. Спасибо. - person Krunal; 05.04.2012