Перенос веб-сайта 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 доступен по умолчанию)
- автоматическое управление серверами
минусы
- архитектура должна быть тщательно продумана
- время развертывания медленнее (замедляет цикл разработки)
вещи, котор нужно рассматривать для Удобоносимости
пункты выше, возможно, дали вам достаточно, чтобы планировать ближайшее будущее приложения, и это очень вероятно, что вы могли бы хотеть рассмотрим облачные службы в будущем (это лучше подходит для ряда сценариев приложений в долгосрочной перспективе).
вот список вещей, которые помогут переносимости между веб-сайтами в облачные сервисы:
-
начните думать без гражданства
веб-сайты Windows Azure хороши, поскольку это постоянная среда, что означает, что вы можете хранить такие вещи, как состояние сеанса и активы на диске.
хотя это хорошо особенность, лучше всего начать планирование в направлении приложения без гражданства, если ваша конечная цель - быть в облачных службах. Вот несколько вещей, которые вы можете сделать, чтобы начать думать без гражданства:
-
не полагайтесь на состояние сеанса
- Если вам это нужно, придумайте стратегию, чтобы сделать его масштабируемым (служба кэширования, SQL или хранилище)
- используйте службу хранения
- активы, такие как статический HTML, css, javascript и изображения лучше поместить в хранилище
- позволяет избежать дополнительной пропускной способности на вашем веб-сайте (потенциально оставаться общим дольше для более низкой стоимости)
- может быть CDN включен, обеспечивает лучший опыт для международных рынков
- легче обновлять веб-ресурсы, когда приложение переносится в облачные службы
- хранение пользовательского контента
- если ваше приложение уже хранит в Службе хранения, на один код меньше изменения в будущем при переходе на облачные сервисы.
- активы, такие как статический HTML, css, javascript и изображения лучше поместить в хранилище
-
не полагайтесь на состояние сеанса
-
сделать его легко обнаружить закономерности в ваших данных
преимущество облачных сервисов в том, что они позволяют снизить затраты только за счет масштабирования того, что необходимо масштабировать. Запуск процесса идентификации единиц масштаба, т. е. как вы разделяете свою базу данных или таблицы в хранилище.
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:
и сравнение некоторых функций веб-сайтов и облачных сервисов на msdn:
еще одним преимуществом облачных служб Windows Azure над веб-сайтами является возможность добавления облачной службы в виртуальную сеть Azure. Это может предоставить ему доступ к локальным ресурсам, таким как базы данных. Поэтому, если ваши требования таковы, что вам нужна масштабируемость, предлагаемая Azure, но необходимо сохранить данные локально из-за ограничений безопасности, облачные службы-лучший выбор.
веб-сайты Azure не могут быть частью виртуальной сети Azure. Доступ к локальным ресурсам механизмов, таких как Azure реле автобус должен быть настроен.
У нас был наш веб-сайт, работающий на PHP на каком-то хостинге, и в какой-то момент мы решили переместить его в Azure (где находится основная часть нашего сервиса). Мы начали с веб-сайтов Azure, которые были великолепны с точки зрения разработки (в основном интеграция с git). Но примерно через неделю тестирования (когда мы решили фактически переместить производственный веб-сайт) мы обнаружили, что в настоящее время
- нет SSL для пользовательских доменов
- пользовательские Домены доступны только для зарезервированные экземпляры (без общей инфраструктуры)
- SLA
Итак, мы перешли к размещенной службе. Главной проблемой для нас было отсутствие возможности простого развертывания (нужно было построить пакет и загрузить весь пакет веб-сайта), а найденным решением было использовать dropbox - в качестве задачи запуска для роли мы устанавливаем сервис dropbox на машину, которая берет весь веб-сайт из dropbox, который в свою очередь имеет SVN проверенную папку, поэтому обновления сайта стали очень легкими.