Обслуживание большого приложения как одного приложения web_ui?


person enyo    schedule 10.06.2013    source источник
comment
У нас есть производственное приложение размером 2,8 МБ. Минимизированный и сжатый gzip, он занимает 189 КБ и навсегда кэшируется на клиенте. У нас есть 66 веб-компонентов и еще немного кода.   -  person Kai Sellgren    schedule 11.06.2013
comment
@KaiSellgren ваши файлы дротика каким-то образом объединены или браузер должен загружать все 66 компонентов по отдельности?   -  person enyo    schedule 11.06.2013
comment
Я говорил о выводе dart2js (файл JavaScript). На данный момент мы не объединяем файлы .dart (я знаю, что для этого есть dart2js --output-type=dart или что-то в этом роде, но это пока не важно для нас). Итак, в случае dart2js мы, конечно, просто загружаем все сразу, потому что он такой маленький (189 КБ). Позже мы можем расстаться.   -  person Kai Sellgren    schedule 12.06.2013


Ответы (1)


Обычно считается лучшей практикой разделить ваш код, как только он достигнет определенного размера (этот размер зависит от вашей целевой аудитории, ваших серверов и т. д.).

Dart2js поддерживает отложенную загрузку библиотек, так что вы загружать начальный фрагмент приложения при загрузке страницы, а затем загружать отдельные фрагменты через запросы AJAX по мере необходимости. Это сэкономит трафик и ускорит загрузку страницы.

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

Примечание. В настоящее время существуют ограничения на количество файлов, которые можно загружать отложенно: https://code.google.com/p/dart/issues/detail?id=3940

person Pixel Elephant    schedule 10.06.2013