Будет ли Silverlight слишком долго загружать мое бизнес-приложение? - PullRequest
6 голосов
/ 10 ноября 2010

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

Однако одна часть, которую я боюсь, это загрузка.Если я правильно понимаю, Silverlight компилирует ВСЕ страницы в один двоичный файл, который загружается на клиент во время загрузки.Теперь все хорошо, всего несколько страниц, но если я достигну сотен страниц, это время загрузки будет очень долгим?Когда я смотрю на примеры по Infragistics и Telerik, им требуется 10-15 секунд, чтобы загрузить только эти несколько примеров.Я считаю это неприемлемым.

Есть ли способы обойти это?

Ответы [ 3 ]

4 голосов
/ 10 ноября 2010

Да, это действительно проблема. Но двоичные файлы (xap-файлы, которые на самом деле являются просто zip-файлами dll) обслуживаются по стандартному HTTP, поэтому они, безусловно, могут быть кэшированы (как настраивается через ваш веб-сервер). Таким образом, первая загрузка может занять 15 секунд, но все последующие загрузки не должны иметь времени загрузки (если вы не выпустили обновление).

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

Существует несколько продуктов и методов для добавления дополнительного сжатия к вашим xaps (так как они на самом деле просто zip-файлы)

http://www.google.com/search?q=silverlight+xap+compactor.....

Я думаю, что Telerik также предлагает один такой инструмент.

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

2 голосов
/ 10 ноября 2010

Можно также использовать несколько файлов xap, чтобы вы могли разбить свое приложение на отдельные файлы xap.

Я никогда не пробовал этого, но если вы Google, то вы найдете много статей.Например,

http://dotplusnet.blogspot.com/2010/09/how-to-load-multiple-xap-files-in.html

0 голосов
/ 10 ноября 2010

Во-первых, что может привести к увеличению размера xap, это dll и любые собственные импортированные ресурсы (большие изображения и т. Д.).Поэтому, если у вас есть относительно однородный сайт, основанный на том же внешнем виде / шаблонах, добавление новых страниц не сильно увеличит общий размер, поскольку необходимые компоненты уже есть в xap, а дополнения в основном состоят из текста.

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

Приложение Silverlight также может динамически загружать контент при необходимости.Если вы можете отделить контент и / или дескрипторы контента / ресурсы от кода, вы должны увидеть, возможно ли сохранить его в базе данных или другом репозитории и извлечь его только при необходимости.

Можно также загрузитьдругие xaps динамически во время выполнения, что позволяет вам сначала иметь легкую нагрузку xap, а затем вводить другие по требованию и, таким образом, распределять время загрузки на основе того, что требуется пользователю во время «сеанса».

...