Зачем и когда мне нужен Azure?

Я прочитал много статей об Azure и .NET Service Bus. Я думаю, что понимаю техническую часть, но на данный момент я упускаю главный момент - некоторые "кейсы", которые должны объяснить мне, какие проекты следует переместить в облако. Предположим, я начинаю новый проект. Как я могу решить, подходит ли мой проект для платформы Azure?

каковы общие сценарии для Azure? Это для Всемирных приложений B2C, локальных приложений B2C или также для "внутреннего" B2B заявления? Как я могу решить, лучше ли глобальная Azure, чем локальная инфраструктура или хостинг-провайдер локального сервера? Каковы плюсы и минусы перехода на Azure по сравнению с другими сценариями?

также Меня интересует реальный опыт. Развернули ли вы какой-либо реальный проект в Azure? Каков ваш опыт? Уже в Azure зрелые? Многие технологии нуждаются в нескольких (по крайней мере, 3) реализациях, прежде чем они станут полезными. То же самое с Azure?

моя последняя забота о безопасность и доверие. Доверяете ли вы платформе Azure? Я прочитал статью, которая продемонстрировала некоторые гипотетические банковские транзакции через Azure с использованием службы SQL Azure. Это действительно что-то, что можно безопасно сделать на Azure?

на в должности но я не нашел там ответов.

Edit:

Я прочитал это статьи сегодня. Это также объясняет некоторые мои вопросы.

6 ответов


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

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

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

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


[Edit]

только что обнаружил этот мой 10-месячный пост. Ну, все меняется. Мы перешли от Microsoft к Ruby, Coffeescript, Node.js и немного Scala и никогда не жалел об этом. Heroku и MongoHQ оказались гораздо лучше подходят для того, что мы делаем.

[/Edit]

У меня есть два потребительских сайта в бета-версии, работающих на Azure, и я играю с ним с самой ранней бета-версии.

Плюсы:

  • Azure невероятно стабильный. У нас не было ни одного инцидента, хотя мы обрабатываем много данных.
  • SDK является всеобъемлющим, хорошо документированным и интегрированным в IDE.
  • Uptime превышение SLA
  • Fast-Azure действительно очень быстро по всем аспектам
  • очень хорошо вписывается в рабочий процесс разработки
  • очень преданные сотрудники и MVPs в Microsoft. Вы получаете помощь, когда она вам нужна.
  • мы экономим чрезвычайно на расходах администратора. Е. Г. нам не нужен ;-)
  • легко масштабировать. Это была самая большая точка продажи. Нет необходимости в первоначальном капитале, и как только мы получим это интервью CNN, Мы просто добавим еще пару ролей на день или два.
  • корпоративный класс, система базы данных с балансировкой нагрузки с SQL Azure. Перенос кода - самое большее дело нескольких часов.

Минусы:

  • нет распределенного кэша - есть решения memcached, но он чувствует себя как hack
  • высокие начальные затраты при просмотре его из сценария веб-приложения (например, стоимость оказывает чрезмерное влияние на архитектуру приложения)
  • очень высокая стоимость решения NoSQL и очереди. Существует плата за транзакцию, которая делает некоторые сценарии очень сложными для достижения.
  • нет в реальном времени (или полу-реальном времени) платежной информации через API.
  • интерфейс управления является позором для Microsoft.
  • Microsoft перемещение медленно / им требуется много времени, чтобы создать новые функции.
  • вы очень заблокированы, поскольку Azure является поставщиком PaaS vs Amazon (IaaS). Это изменится, как только роли виртуальной машины будут доступны.
  • требуется очень много времени (~ 10 - 30 мин), чтобы создать новый экземпляр
  • отсутствие карты / уменьшить рамки

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

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

Я определенно доверяю Azure больше, чем своему банку, и за последние пару лет многие инциденты доказали, что я прав. В конце концов, это сводится к тому, что Microsoft намного проще нанять и сконцентрировать первоклассных сотрудников безопасности тогда не ИТ-компании. И им есть что терять.


после того, как высосал из Azure Kool aid firehose за последние пару дней, я могу ответить на пару ваших вопросов.

Это безопасно?

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

это правильно для тебя?

ответ на это очень открытый. Поверните этот вопрос - вам лучше спросить:требуются ли вам какие-либо преимущества Azure? ответ на этот вопрос может быть намного яснее, чем его аналог. Есть некоторые преимущества для Azure (в основном на основе масштабируемости, ремонтопригодности, поведения стиля CDN и удаления стоимости внутренней ИТ-инфраструктуры), но он по-прежнему имеет свои ограничения и не подходит для всех цели и в некоторых случаях не дадут вам никакой пользы вообще.


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

Если вы реализуете одно и то же приложение, используя собственную инфраструктуру, у вас много впереди постоянные затраты независимо от того, сколько ценности вы выходите из приложения. Например, необходимо приобрести, установить, настроить и поддерживать достаточное количество оборудования для отрегулируйте ожидаемую пиковую нагрузку, даже если пиковая нагрузка происходит только один раз в день или один раз в месяц. Что произойдет, если вы недооцениваете пиковую нагрузку? Ваша служба идет вниз, пока вы не сможете построить больше оборудования. Что произойдет, если вы переоцениваете свою пиковую нагрузку? У вас есть неиспользуемое оборудование, сидящее вокруг, что означает, что вы потратили деньги, которые не работают на вас.

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

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

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

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

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

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

раскрытие информации: я сотрудник Microsoft, и я работаю над инструментами для Windows Azure.


для меня это в основном анализ затрат и выгод. Определите, сколько будет стоить внутренняя поддержка всей инфраструктуры и Azure.

безопасность, очевидно, является самой большой точкой преткновения.

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

http://azuresecurity.codeplex.com

http://www.windowsecurity.com/articles/Microsoft-Azure-Security-Cloud.html


вопрос основывается на ложных предпосылках. Проекты не нужно чтобы перейти к облаку вообще. То, что предлагает облако, как упоминалось предыдущими ответчиками, является платформой для новых идей, которая не ограничена масштабируемостью. Ключевым преимуществом cloud является то, что все основные затраты, связанные с ростом, являются opex, в то время как традиционные "проекты" нуждаются в capex для роста и, таким образом, основаны на докризисной модели роста финансового VC-стиля.

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

например, в то время как MS купила Skype для X миллиардов, программисты смогут создать популярный облачный клиент Skype и достичь того, что Skype сделал без capex или необходимости для VC / financier рост (теоретически).

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