Пропускная способность для приложений Silverlight - PullRequest
0 голосов
/ 03 июня 2010

У меня есть идея создать что-то вроде простой онлайн-версии Microsoft Visio. Приложение будет построено с использованием возможностей Silverlight. Люди смогут создавать блок-схемы, аналогичные тем, которые они делают в Visio, и они смогут сотрудничать и одновременно работать над дизайном.

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

Ответы [ 2 ]

0 голосов
/ 03 июня 2010

Вы должны учитывать две затраты на пропускную способность:

1) Приложение Silverlight

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

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

Для вашего приложения вы можете также рассмотреть возможность установки приложения Silverlight как приложения вне браузера. Приложение необходимо будет отправить по сети только при первой установке и при наличии обновления (обновление выполняется в фоновом режиме).

2) Передача данных клиент-сервер

Это очень сильно зависит от вашего приложения. Для приложения, ориентированного на документы, такого как предлагаемое вами, вы можете загрузить и сохранить весь документ с веб-сервера и на него. Если вас очень беспокоит пропускная способность, вы можете использовать свой собственный двоичный формат сериализации (например, буферы протокола Google) или использовать любую из технологий, доступных в .NET Framework. Требования к пропускной способности увеличатся, если ваши документы содержат большие объекты, такие как изображения.

Вместо передачи всего документа обратно на сервер вы можете вместо этого хранить параллельные представления в документе как на клиенте, так и на сервере, и передавать операции обратно на сервер только тогда, когда пользователь манипулирует документом. Это более сложное решение, но, вероятно, оно будет работать лучше при обновлении больших документов. Для этого вы можете использовать .NET RIA Services или любую другую клиент-серверную технологию .NET.

В вашем случае я бы проигнорировал стоимость 1) и стоимость 2), которые одинаковы для любого клиент-серверного приложения на основе .NET, то есть Silverlight не несет никаких дополнительных затрат.

0 голосов
/ 03 июня 2010

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...