«Облако» - такой расплывчатый термин.Тем не менее, я думаю, что это очень хороший вопрос.
По сути, облачный хостинг IaaS , а не магически увеличивает масштаб вашего приложения.Это действительно виртуальный частный сервер с очень короткими периодами контракта / отмены.
Для масштабируемости магия заключается не столько в хостинге, сколько в горизонтальной масштабируемости самого кода приложения.Это связано со всеми проблемами распределенных вычислений.Например, добавить больше серверов приложений не всегда легко: вы должны быть уверены, что не сохраняете какое-либо пользовательское состояние в серверном приложении (а скорее в базе данных, static
может быть злом), кэширование может быть проблематичным, поскольку локальноекэши могут усугубить ситуацию, если вы используете стратегию циклического перебора и т. д.
- Каков ваш опыт перехода приложений в облако, какой вы выбрали и почему?
- Что бы вы посоветовали мне подумать при разработке / разработке решения, чтобы сделать переход максимально безболезненным.
На самом деле вам не нужно делать что-то другоепросто для размещения на EC2 или Azure - в основном .Но, конечно, это не так просто, когда дела растут.
Например, хранилище экземпляров EC2 довольно ограничено.Однако дополнительное хранилище на EBS не обеспечивает сопоставимых характеристик производительности и может быть немного более медленным, чем на диске.Дело в том, что EBS магически масштабируется , и это, вероятно, больше PaaS, чем IaaS;но это не простой жесткий диск, и, следовательно, он не ведет себя как жесткий диск.Я не знаю о хранилище блоков Azure.В общем, ожидайте, что дополнительные уровни абстракции будут представлять собственные проблемы, независимо от того, что они делают.
Исходя из вашего опыта, лучше ли переходить в облако (с финансовой точки зрения) или лучше покупать собственные серверы и приложение для балансировки нагрузки самостоятельно и, возможно, сэкономить деньги в долгосрочной перспективе?
Типичные облачные провайдеры стоят дороже, чем обычные провайдеры VPS «за углом», но, насколько я знаю, они также гораздо более надежны и профессиональны.В EC2 есть свободный уровень (но он довольно маленький), Azure предоставляет вам бесплатный экземпляр на 3 месяца.
Правильно выполнить вычисления довольно сложно;Например, если вам по какой-либо причине необходимо закрыть службу, было бы неплохо иметь возможность отменить сейчас вместо того, чтобы платить еще один год - вы можете включить этот риск в свои расчеты.С другой стороны, EC2 и Azure будут значительно дешевле, если вы зарегистрируетесь на 6 или 12 месяцев, а не будете платить по часам.
Возможно, вы захотите воспользоваться бесплатным планом Azure, потому что это приятноначать возиться без каких-либо затрат.Большим преимуществом облачных провайдеров является то, что вы можете очень легко масштабировать по вертикали: покупка 16-ядерного компьютера с 64 ГБ ОЗУ - это очень дорого, но если на вашем сайте так много трафика, обновление плана не будетбыть такой большой проблемой.