Читайте РБК без баннеров

Подписка отключает баннерную рекламу на сайтах РБК и обеспечивает его корректную работу

Всего 99₽ в месяц для 3-х устройств

Продлевается автоматически каждый месяц, но вы всегда сможете отписаться

На все готовое: как PaaS делают разработку приложений быстрее и доступнее

Фото:Shutterstock
Фото: Shutterstock
Благодаря облачным сервисам PaaS («платформа как услуга») даже компании без глубокой экспертизы в ИТ могут быстро создавать собственные бизнес-приложения. Разбираемся, как работают такие сервисы и что они дают бизнесу
1
Что такое PaaS и кому это нужно

PaaS — самый сложный и интересный сегмент облачных сервисов. Он занимает особое положение между IaaS («инфраструктура как услуга») и SaaS («программное обеспечение как услуга»). Само объяснение того, что такое PaaS и как работают такие сервисы — нетривиальная задача.

Принципы IaaS и SaaS, в целом, просты и понятны. IaaS — это процессоры, оперативная память, хранилища данных, только не физические, а виртуальные, создаваемые в дата-центре поставщика облачных услуг.

С SaaS все еще проще. Так, например, все веб-приложения — почта, мессенджеры, видео/аудио плееры, навигаторы — это и есть SaaS. Работа приложения выполняется на удаленном сервере, а на экране компьютера, смартфона или планшета пользователя отображается ее результат.

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

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

Теперь почти все необходимое можно найти на одной платформе. Специалистам остается только написать код и протестировать новое приложение.

Один из ведущих мировых поставщиков облачных SaaS-решений, компания SaleForce, описывает свою платформу Force.com как Development as a Service, подчеркивая ее полезность для разработки. В этом есть логика: если выбирать между основными вариантами облачных сервисов, то PaaS действительно лучше всего подходит для разработки собственных программных продуктов.

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

Если представить, что компании нужно не разработать приложение, а приготовить новое блюдо, то по модели PaaS он получил бы хорошо оборудованную кухню с полным набором посуды, продуктов и специй. В рамках IaaS ему бы предоставили помещение с холодильником, плитой и духовкой. А в формате SaaS — уже приготовленный ужин.

Таким образом PaaS — это сервис для тех, кто решил «готовить» сам, но не хочет слишком глубоко погружаться в технические детали и тратить время, трудовые и финансовые ресурсы на создание среды разработки.

2
Что предлагают поставщики услуг

По итогам прошлого года аналитики из Gartner насчитали на мировом рынке PaaS более 360 операторов, которые предлагают свыше 550 разных облачных платформ. Эксперты уверены, что к 2022 году этот сегмент вырастет более чем на треть по отношению к прошлогодним показателям и достигнет $34 млрд.

Услуги PaaS сегодня предоставляют как крупнейшие игроки облачного рынка — Amazon Web Services и Microsoft Azure, так и национальные поставщики облачных услуг. В России это такие технологические компании как SberCloud, «Яндекс», Mail.Ru, МТС, а также системные интеграторы, имеющие облачные компетенции.

Российские поставщики PaaS лишь относительно недавно стали предлагать широкий и универсальный ассортимент сервисов. Ранее бизнес-пользователям были доступны в основном нишевые решения для разработчиков.

Сегодня среди российских поставщиков облачных PaaS-услуг самый широкий набор сервисов предлагает платформа SberCloud.Advanced компании SberCloud. Она объединяет 40+ интегрированных между собой IaaS/PaaS сервисов, которые можно использовать как по отдельности, так и объединять в единое решение разработки, развертывания и контроля работы приложений.

Помимо базовых облачных услуг, здесь есть такие сервисы как бессерверные вычисления (Functiongraph), брокер сообщений (Distributed Message Service), услуга развертывания приложений в облаке (Application Orchestration Service), поддержка микросервисов (Service Stage) и многие другие PaaS-инструменты. Это позволяет создать на основе платформы продукты любого уровня сложности — от простой системы резервного копирования до «умной» электронной коммерции и решений с использованием искусственного интеллекта. Можно, к примеру, запустить «умный» и надежный интернет-магазин, который выдержит любой наплыв покупателей в «черную пятницу» и обеспечит продавца полноценной бизнес-аналитикой. А можно использовать облачные PaaS-cервисы для работы с big data, как это сделала компания Mediascope.

Наиболее активно PaaS используют компании с высоким уровнем ИТ-экспертизы, а также бизнес, работающий на высококонкурентных рынках — от ретейла до HR-индустрии и других компаний сферы услуг. По словам экспертов SberCloud, одним из последних трендов в области применения облачных решений стало более широкое использование сервисов для автоматизации развертывания, масштабирования и управления приложениями на основе технологии контейнеризации и микросервисной архитектуры.

Элементы платформы

Из чего состоит готовая программная среда, которую получают пользователи PaaS:

  • Операционные системы
  • Инструменты для разработки и тестирования (frameworks)

Сюда входят, например, редактор исходного кода, отладчики и компиляторы. Конкретный набор инструментов зависит от платформы.

  • Промежуточное программное обеспечение / ПО промежуточного уровня (Middleware)

Конечный пользователь не взаимодействует с таким ПО, но оно необходимо для разработки новых приложений. В последнее время это направление все чаще выделяют в самостоятельный сегмент — Middleware as a Service (MWaaS). В состав сервиса обычно входит сервер приложений и интегрированные функции безопасности.

  • Базы данных и инструменты для управления ими

Благодаря этой услуге пользователь получает доступ к базам данных любого типа. Поставщик обеспечивает администрирование и поддержку БД, снимая нагрузку с ИТ-специалистов компании. Эта услуга — одна из самых популярных на рынке. Ее также иногда выделяют в самостоятельный сегмент платформенных сервисов — Data Base as a Service (DBaaS).

Схема основных отличий между SaaS, PaaS и IaaS с точки зрения инструментов
Схема основных отличий между SaaS, PaaS и IaaS с точки зрения инструментов (Фото: Национальная библиотека им. Н. Э. Баумана)

3
Что PaaS дает компаниям

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

В результате значительно сокращается показатель time-to-market: компания получает возможность максимально быстро выводить новые услуги и продукты на рынок. Это важно не только для ИТ-индустрии, но практически для любого бизнеса.

«До сих пор существует некоторый стереотип, что PaaS нужны в основном разработчикам и ИТ-компаниям, но сейчас cитуация изменилась. Среди пользователей SberCloud.Advanced — самые разные компании из самых разных отраслей, — говорит генеральный директор SberCloud, вице-президент «Сбера» Евгений Колбин. — По многим причинам им часто нужны не готовые SaaS-приложения, а более кастомизированные решения — для работы с Big Data, для сложной аналитики, графовые базы данных, микросервисы и другие. Мы предлагаем клиентам протестировать варианты, состоящие из того или иного набора IaaS/PaaS продуктов SberCloud.Advanced, а они уже подбирают оптимальное решение для своей бизнес-модели. Главное, что в облаке разработка, тестирование и развертывание бизнес-приложений происходит на прядок быстрее создания аналогичного решения традиционными методами».

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

С другой стороны, готовая программная среда и автоматизация процессов разработки сокращает количество человеко-часов, необходимых для создания продуктов. Как правило, за счет PaaS компании экономят до 50-70% рабочего времени ИТ-команды.

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

4
Какие возможности скоро появятся

По мере возникновения новых потребностей у бизнеса облачные платформы наполняются новыми опциями и функциями. «Тенденции, которые мы наблюдаем в PaaS, одновременно и отражают, и определяют непрерывную трансформацию облачных вычислений и цифрового бизнеса», — говорит вице-президент по исследованиям Gartner Ефим Натис.

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

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

Кроме того, крупнейшие операторы облачных сервисов сейчас предлагают клиентам мощные облачные вычислительные кластеры для работы с искусственным интеллектом. Они нужны, чтобы оперативно обрабатывать большие и сложные массивы данных, быстро обучать ИИ-модели и запускать на их основе различные решения, базирующихся на машинном и глубоком обучении. Так, в конце 2019 года SberCloud запустила самый мощный в России суперкомпьютер — «Кристофари» — и облачную платформу AI Cloud. На платформе реализовано два важных сервиса — Model Training и Model Inference. Первый позволяет тренировать модели машинного и глубокого обучения на базе «Кристофари». Второй — разворачивать и использовать модели искусственного интеллекта.

По сути, они объединяют IaaS (мощности суперкомпьютера) и PaaS (привычные для дата-сайентистов среды разработки и инструменты). И теперь у любой компании, появился доступ к супервычислениям и разработкам на базе ИИ, которые раньше были доступны только крупным корпорациям.

Следующий материал: