облачный хостинг по сравнению с [закрытым] управляемым хостингом

Обычно:

MajorVersion. MinorVersion. Пересмотр. Сборка

11
задан k.honsali 10 December 2009 в 14:54
поделиться

5 ответов

"Теперь возникает скрытый вопрос: как бы вы профилировали свое приложение j2ee, чтобы определить, является кандидатом на то, чтобы помутить или нет, зная, что это »

Кроме того, сделайте это явным вопросом. Сделайте это НАЗВАНИЕМ этого вопроса. Поместите это в начало вопроса. Если возможно, удалите все свои предположения и сосредоточьтесь на вопросе.

Вот что мы делаем.

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

  2. Спросите их, что они поддерживают. Что еще более важно, то, что они не поддерживают .

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

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

«Но зачем тратить деньги на попытки разместить его, если он может не работать?»

Какие расходы? Вы можете потратить месяцы на «изучение» своего кода. Или вы можете попробовать разместить его. Обычно на вопрос «попробуйте разместить его» ответ появляется в течение нескольких дней. Просто сделать это требует меньше усилий.

2
ответ дан 3 December 2019 в 11:36
поделиться

О каком виде облачной службы вы говорите? IaaS , PaaS , DaaS?

архитектурное изменение (вы можете не устанавливать ничего, что хотите)

Зависит от перехода с «управляемого сервера» на платформу (например, GAE ) может быть.

кривая обучения (из-за вышеизложенного)

Amazon EC2 не может быть большой кривой обучения, если вы привыкли запускать свой собственный сервер

без аварийного переключения (поскольку сбой уже решен)

Зависит от: EC2 -> вам нужно накрутить собственную

мгновенную масштабируемость (не такую ​​мгновенную, но хотя бы прозрачную?)? меньшая задержка Зависит от: EC2 -> вы должны спланировать это / использовать дополнительную службу

1
ответ дан 3 December 2019 в 11:36
поделиться

Существует множество поставщиков облачных услуг, и, насколько я видел, есть два основных типа из них:

  • Те, которые поддерживают платформу облачных вычислений (например, Amazon E2C, MS Azure)
  • Поставщики виртуальных экземпляров, предоставляющие вам возможность создавать множество запущенных экземпляров (например, RightScale)

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

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

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

1
ответ дан 3 December 2019 в 11:36
поделиться

В некотором смысле сравнение движка приложений Google (gae) и amazon ec2 похоже на сравнение яблок и апельсинов.

С ec2 вы получаете операционную систему с установленным серверным программным обеспечением или без него (tomcat, база данных и т.д .; ваш выбор, в зависимости от того, какой ami вы выберете). С ec2 вам нужен (или быть) системный администратор, чтобы все работало бесперебойно. Балансировка нагрузки на ec2 - это то, что вам нужно выяснить и реализовать; Я никогда не делал этого. Большим преимуществом ec2 является то, что вы можете запускать и останавливать новые экземпляры программно, и по сравнению с обычным поставщиком веб-сервера, вы платите только тогда, когда ваш экземпляр запущен и работает. Вы используете это «автоматическое вращение вверх / вниз» для реализации балансировки нагрузки и переключения при отказе. Но вы должны выполнить реализацию (опять же, у меня нет опыта с этой частью).

Благодаря движку приложений Google (gae) все администрирование системы выполняется за вас. Он также автоматически масштабируется по мере необходимости как на стороне приложения, так и на стороне базы данных. Вы также платите только за то, что используете; простаивающее приложение, которое не получает обращений, не требует никаких затрат. Недостатком gae является то, что вы ограничены в языках, которые можете использовать; python и java (или вещи, которые работают на jvm, например jruby). Еще большим недостатком является то, что база данных не является sql (они не называют ее базой данных; они называют ее хранилищем данных) и, вероятно, потребует переделки вашего ddl, если у вас есть существующая база данных; это определенная трата времени программиста, чтобы понять, как это работает и как эффективно его использовать.

Так что, если вы начинаете с нуля (или желаете переписать) и у вас есть ресурсы и время, чтобы изучить его пути, gae может быть в пути. Если у вас есть навыки системного администратора или системного администратора и у вас есть время или вы знаете, как настроить балансировку нагрузки и аварийное переключение, тогда вам может помочь ec2. Если ваше приложение будет много простаивать, то ec2 стоит дорого; В прошлый раз я проверял, что оставить небольшой экземпляр стоит около 70 долларов в месяц.

1
ответ дан 3 December 2019 в 11:36
поделиться

Я думаю, вам нужно сосредоточить внимание на следующих моментах:

 granular cost (pay per Ghz or Gbyte)
 instantaneous scalability (not so instantaneous, but at least transparent?) ? lower latency

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

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

0
ответ дан 3 December 2019 в 11:36
поделиться
Другие вопросы по тегам:

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