сколько из проблемы это для портирования приложения asp.net на лазурь?

У меня есть частично разработанное приложение asp.net, но теперь клиент хочет, чтобы оно было разработано в лазури. Сколько из существующего кода может использоваться в разработке приложения в лазури.

С какими проблемами мы могли возможно встретиться, когда мы пытаемся портировать существующее приложение asp.net на лазурь? Там какие-либо другие альтернативы к лазури в облачных вычислениях?

17
задан David Makogon 30 January 2012 в 23:46
поделиться

2 ответа

Что касается приложения asp.net, вы, безусловно, можете перенести его в Azure. Ваша основная логика будет перенесена относительно просто, и вы получите множество преимуществ, которые может предложить Azure. В выпуске от июня 2010 года вы также получите поддержку .NET 4 и IntelliTrace для отладки.

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

  • Вы должны иметь дело с ASP. NET Session State в экземплярах ваших веб-ролей (которые не поддерживаются из коробки, за исключением inproc). Вам также необходимо настроить и использовать поставщиков ролей и членства (см. здесь для получения дополнительных сведений). РЕДАКТИРОВАТЬ: теперь у вас есть доступ как к AppFabric Cache для состояния сеанса, так и к SQL Azure, входящему в состав универсальных поставщиков, включенных в Windows Azure SDK + Tools.
  • Вы должны проверить свой SQL-сервер на несовместимость с SQL Azure (например, запланированные задания, поскольку нет поддержки агента SQL). Различия в SQL Azure описаны здесь . Вам также необходимо учитывать ограничение размера SQL Azure в 50 ГБ, что может потребовать от вас выгрузки содержимого в хранилище BLOB-объектов Azure. РЕДАКТИРОВАТЬ: Вы можете запустить свою базу данных SQL Server с помощью мастера миграции SQL Azure для тестирования совместимости.
  • Вам необходимо настроить ведение журнала и диагностику, предпочтительно с выводом трассировки, чтобы вы могли получать эти данные удаленно.
  • Вам нужно подумать о том, как вы будете отслеживать и масштабировать свое приложение.Вам доступна вся информация, которая может понадобиться для масштабирования (счетчики производительности, длина очереди и т. Д.). Обратите внимание на WASABI - блок приложения с автоматическим масштабированием, часть Enterprise Library. Вы также можете подписаться на такую ​​службу, как AzureWatch .
  • Вам нужно подумать о кешировании, поскольку в настоящее время нет готовой реализации кэширования, которая работает с экземплярами вашей веб-роли , которая теперь предоставляется как услуга. Прочтите подробности здесь , а также FAQ здесь .
  • Нужна ли вам поддержка SMTP? Если да, то подробности о можно прочитать здесь . SendGrid недавно объявила о продвижении бесплатного уровня для Windows Azure.
  • Вы также размещаете сервисы WCF? Если это так, посетите этот сайт для получения дополнительных сведений (в частности, об известных проблемах).

Итак: да, есть некоторые вещи, о которых вам нужно позаботиться, но Azure - отличная платформа для размещения приложений asp.net, и вы должны серьезно об этом подумать.

22
ответ дан 30 November 2019 в 13:12
поделиться

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

Если ваше приложение использует постоянное хранилище (кроме SQL Server), вам, возможно, придется несколько переработать этот код. Однако платформа теперь имеет дисковое хранилище, которое имитирует файловую систему, так что это должно быть довольно просто.

Еще одна проблема, на которую следует обратить внимание, - это web.config. Если вы интенсивно используете это для настройки среды выполнения, вам также придется переделать это. Вы не можете развернуть отдельные файлы в своем приложении в Azure, поэтому рекомендуется перенести такие параметры в файл конфигурации Azure.

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

2
ответ дан 30 November 2019 в 13:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: