Перенос веб-сайта Azure в облачную службу Azure

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

решение связано с тем, что я читал, что веб-сайты Azure более просты и быстры в разработке почти без специфичных для Azure конфигураций или кода. Таким образом, быстрый и простой запуск является хорошей отправной точкой для проекта.

но это хорошая отправная точка для вас? Есть миграция веб-сайта Azure в облачную службу Azure аналогично миграции обычного веб-сайта ASP.NET веб-сайт облачной службы Azure? Вы бы начали с облачной службы Azure с самого начала? Если да, то почему?

Спасибо за ваше время.

5 ответов


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

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

Веб-Сайты Windows Azure

вы правильно определили, что веб-сайты Windows Azure являются отличной отправной точкой для приложения, однако вы можете также учтите, что веб-сайты предлагают достаточную масштабируемость для многих решений.

плюсы

  • 10 бесплатных сайтов во время предварительного просмотра [12 месяцев]
  • простое развертывание (используйте Git,TFS, Web Deploy или FTP)
  • Быстрая Масштабируемость (вы можете перейти на свой собственный выделенный кластер [aka резерв стандартный])
  • Простая Разработка (Поддержка Classic ASP,ASP.NET,узел.js, Python& PHP)
  • постоянная среда (большинство людей привыкли к этому)

минусы

  • нет поддержки SSL в пользовательских доменах
  • в предварительном просмотре (в настоящее время нет SLA)

Облачные Службы Windows Azure

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

плюсы

  • повышенный контроль над стоимостью вашего приложения (при правильной архитектуре)
  • гибкость (Вы имеете полный контроль над окружающей средой)
    • поддержка SSL
    • Язык Агностик
    • Агностик Веб-Сервера (хотя IIS доступен по умолчанию)
  • автоматическое управление серверами

минусы

  • архитектура должна быть тщательно продумана
  • время развертывания медленнее (замедляет цикл разработки)

вещи, котор нужно рассматривать для Удобоносимости

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

вот список вещей, которые помогут переносимости между веб-сайтами в облачные сервисы:

  1. начните думать без гражданства

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

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

    • не полагайтесь на состояние сеанса
      • Если вам это нужно, придумайте стратегию, чтобы сделать его масштабируемым (служба кэширования, SQL или хранилище)
    • используйте службу хранения
      • активы, такие как статический HTML, css, javascript и изображения лучше поместить в хранилище
        • позволяет избежать дополнительной пропускной способности на вашем веб-сайте (потенциально оставаться общим дольше для более низкой стоимости)
        • может быть CDN включен, обеспечивает лучший опыт для международных рынков
        • легче обновлять веб-ресурсы, когда приложение переносится в облачные службы
      • хранение пользовательского контента
        • если ваше приложение уже хранит в Службе хранения, на один код меньше изменения в будущем при переходе на облачные сервисы.
  2. сделать его легко обнаружить закономерности в ваших данных

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


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

  • веб-сайты Azure и размещенные службы действительно тривиальны для развертывания. С Visual studio вы создаете пакет и просто загружаете его. Тогда ты есть среда разработки, чтобы проверить это. Если ты не против, поменяйся. ИПС. Если это не нормально для вас, обновите снова.

  • ваши экземпляры имеют некоторые свойства, которые могут быть раздражающий. Для например, вы не можете быть уверены в своем IP-адресе. Затем, если ваше приложение работает с некоторым провайдером, использующим ограничение IP, вам нужно будет выяснить как действовать дальше.


Я прочитал все сообщения, и все они очень полезны. В дополнение ко всему сообщению, я нашел информацию о msdn:веб-сайты Windows Azure, облачные службы и виртуальные машины: когда использовать какие?

с веб-сайтов Windows Azure вы можете:

  • создание масштабируемых веб-сайтов в Windows Azure.
  • быстро и легко развертывать сайты в масштабируемой облачной среде, которая позволяет запускать небольшие и масштабируемые по мере необходимости.
  • использовать языки и приложения с открытым исходным кодом по вашему выбору затем развертываются с FTP, Git или TFS и легко интегрируют службы Windows Azure, такие как база данных SQL, кэширование, CDN и хранилище.

с облачными сервисами, вы можете:

  • создайте или расширьте корпоративные приложения в Windows Azure.
  • создание высокодоступных, масштабируемых приложений и сервисов с использованием богатой среды PaaS. Поддержка передовых многоуровневых сценариев, автоматизированных развертываний и эластичного масштаба. Предоставлять SaaS-решений для клиентов в любой точке мира.

а также есть суммирует вариант на msdn:

 Summarizes the options about Web Sites,Cloud Services  and Virtual Machines

и сравнение некоторых функций веб-сайтов и облачных сервисов на msdn:

Comparing features of Web Sites and Cloud Services


еще одним преимуществом облачных служб Windows Azure над веб-сайтами является возможность добавления облачной службы в виртуальную сеть Azure. Это может предоставить ему доступ к локальным ресурсам, таким как базы данных. Поэтому, если ваши требования таковы, что вам нужна масштабируемость, предлагаемая Azure, но необходимо сохранить данные локально из-за ограничений безопасности, облачные службы-лучший выбор.

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


У нас был наш веб-сайт, работающий на PHP на каком-то хостинге, и в какой-то момент мы решили переместить его в Azure (где находится основная часть нашего сервиса). Мы начали с веб-сайтов Azure, которые были великолепны с точки зрения разработки (в основном интеграция с git). Но примерно через неделю тестирования (когда мы решили фактически переместить производственный веб-сайт) мы обнаружили, что в настоящее время

  1. нет SSL для пользовательских доменов
  2. пользовательские Домены доступны только для зарезервированные экземпляры (без общей инфраструктуры)
  3. SLA

Итак, мы перешли к размещенной службе. Главной проблемой для нас было отсутствие возможности простого развертывания (нужно было построить пакет и загрузить весь пакет веб-сайта), а найденным решением было использовать dropbox - в качестве задачи запуска для роли мы устанавливаем сервис dropbox на машину, которая берет весь веб-сайт из dropbox, который в свою очередь имеет SVN проверенную папку, поэтому обновления сайта стали очень легкими.