Найти тему
IT News

Новые веяния облачных технологий

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

Сначала был виртуальный хостинг (shard hosting) – на одном физическом сервере размещается произвольное число сайтов, все они имеют общий IP-адрес, процессор и память. Пользователь может только загрузить код своего сайта (обычно на PHP) на хостинг. За всё остальное отвечает хостер. Проблемы с производительностью и нехваткой памяти, является неотъемлемой частью виртуального хостинга.

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

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

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

  • Файловое хранилище неограниченной ёмкости и гарантией доступа 99.99999%
  • NoSQL база данных с репликацией в нескольких регионах мира
  • Сеть доставки контента (CDN), которая значительно ускоряет скачивание картинок и видео пользователями вашего сайта
  • Балансировщики нагрузки с автоматическим масштабированием.

Почти на любую задачу можно найти готовый сервис, который решает эту задачу лучше, чем это сделали бы вы.

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

Serverless, как понятно из названия, – это отказ от использования виртуальных серверов. Мы возвращаемся к временам, когда пользователь только пишет код, не касаясь сложностей администрирования серверов. Но теперь это не медленный и ненадежный хостинг, а гибкий сервис, который справится с любой нагрузкой. Мы абстрагируемся от понятия сервер, и считаем, что наш код выполняется в среде с неограниченной мощностью.