Назад | Перейти на главную страницу

Есть ли снижение производительности при использовании облачных серверов?

Имеет ли облачный виртуальный сервер аналогичной спецификации (доступная оперативная память, процессор, диск и т. Д.) По сравнению с «реальным» сервером заметную стоимость производительности?

Мы просто используем облако EC2 для размещения нашей корпоративной инфраструктуры, которая не имеет критических требований к производительности, но я никогда не замечал медленности серверов EC2 по сравнению с нашими старыми физическими размещенными серверами; Я думаю, что Amazon, например, довольно честен со своими характеристиками серверов.

Одна интересная особенность облака Amazon заключается в том, что у них действительно хорошая пропускная способность, которую вы получаете бесплатно, вместо того, чтобы платить своему хостинг-провайдеру за Мбит / с. Я видел гораздо более высокие скорости загрузки / скачивания в EC2 и обратно, чем мы привыкли получать с Rackspace.

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

Серверы, размещенные в облаке, являются виртуальными, поэтому, вероятно, вы заметите более низкую производительность диска.

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

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

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

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

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

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

Есть еще над чем подумать, но, надеюсь, это дает вам краткое представление о том, какие вопросы вы должны себе задать.

Есть ли у вас какие-либо особые требования к вводу-выводу, т.е. создает ли ваше приложение значительную нагрузку на вашу базу данных, даже если это происходит спорадически? Если вы выполняете эквивалент запуска SQL * Loader (утилиты массовой загрузки для Oracle) и выполняете большую запись в БД, размещенную в облаке (или на любой виртуальной машине), вы, вероятно, заметите удар по производительности записи. Падение производительности будет сильно зависеть от базовой архитектуры хранилища. Если у вас есть очень специфические требования к вводу-выводу, вы, вероятно, не захотите использовать их исключительно на основе их облачных спецификаций / виртуальных машин, поскольку производительность виртуальных дисков может сильно различаться.

Как отмечали другие, могут возникнуть проблемы с производительностью, связанные с использованием виртуализированного оборудования. Однако другая область, в которой вы можете заметить разницу, - это задержка в сети. Поскольку эти «облачные» серверы не размещаются на месте, вы, вероятно, заметите значительную разницу в задержке между облачным сервисом и сервисом, размещенным на месте или локально. например Я живу в Аделаиде, и для сеанса SSH нет заметной разницы между моим домашним сервером и сервером, размещенным в центре обработки данных в Аделаиде. Однако разница в задержке между сервером, размещенным в Аделаиде, и сервером, размещенным в США, весьма заметна.

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

Джим.

Моя ценность 2c заключается в том, что если вы просто используете «облачные вычисления» в качестве VPS, то вы упускаете реальную выгоду.

См. Ответ здесь Должно ли наше веб-приложение перейти в облако или на несколько VPS?