Ajax → MS Doloto: оптимизация загрузки Ajax-приложений
В MSDN DevLabs выложили программу Doloto, предназначенную для оптимизации любых Ajax-приложений. В соответствии со своим названием, Doloto отсекает код до необходимого минимума, так что приложение быстрее загружается клиенту и быстрее начинает выполняться.
Программа анализирует исходники и выделяет тот фрагмент кода Javascript, который непосредственно необходим для инициализации программы. Профилирование функций осуществляется на клиентской машине через локальный прокси-сервер http://localhost:8888 во время исполнения Ajax-приложения в браузере. При этом все «ненужные» функции помечаются метками (таймстампы). Прямо на клиентской машине генерируется оптимизированный код Ajax-приложения, в котором «ненужные» функции заменяются маленькими заглушками. Этот код потом будет загружаться в фоновом режиме или по мере необходимости, уже после инициализации основного скрипта. Оптимизированный код сохраняется на жёстком диске клиентского компьютера. Таким образом, можно оптимизировать чужие приложения, даже не имея доступа к их серверам, см. Doloto FAQ.
Программку протестировали на популярных Ajax-интерфейсах и получили впечатляющий результат.
Программа анализирует исходники и выделяет тот фрагмент кода Javascript, который непосредственно необходим для инициализации программы. Профилирование функций осуществляется на клиентской машине через локальный прокси-сервер http://localhost:8888 во время исполнения Ajax-приложения в браузере. При этом все «ненужные» функции помечаются метками (таймстампы). Прямо на клиентской машине генерируется оптимизированный код Ajax-приложения, в котором «ненужные» функции заменяются маленькими заглушками. Этот код потом будет загружаться в фоновом режиме или по мере необходимости, уже после инициализации основного скрипта. Оптимизированный код сохраняется на жёстком диске клиентского компьютера. Таким образом, можно оптимизировать чужие приложения, даже не имея доступа к их серверам, см. Doloto FAQ.
Программку протестировали на популярных Ajax-интерфейсах и получили впечатляющий результат.