Какое-то время казалось, что распространение бессерверных платформ превзошло ожидания. Однако после нескольких заметных историй успеха, таких как громкая стратегия «serverless-first» холдинга Capital One, шумиха пошла на спад, пишет в корпоративном блоге Девин Дикерсон, главный аналитик Forrester.
Отчасти это объясняется тем, что бессерверные платформы всегда страдали от нечетких определений, и, несмотря на отсутствие инфраструктуры и серверов приложений, с которыми пришлось бы возиться, разработчики все равно должны были иметь некоторое представление о работе в рамках нативной облачной платформы. Тем не менее прогресс налицо: если примерно в 2020 г., согласно поисковым показателям Google, наблюдался значительный спад интереса к бессерверным платформам, то в
Бессерверные технологии снова становятся популярными по следующим причинам:
- Появилось лучшее определение, поскольку бессерверные технологии становятся путем к продуктивности разработчиков. Термин «бессерверный» всегда был неправильным и, даже среди конечных пользователей и поставщиков, имел тенденцию означать разные вещи в зависимости от продукта и сценария использования. Так же, как облако — это чей-то компьютер, serverless — это все еще чей-то сервер. Сегодня все стало гораздо понятнее. Бессерверное приложение — это программный компонент, работающий в среде, которая управляет сложностью развертывания, временем выполнения, протоколами и изоляцией процессов, чтобы разработчики могли сосредоточиться на своем коде.
- Истории успеха предприятий предоставили проверенные, повторяемые решения для конкретных сценариев использования. Первоначальный ажиотаж вокруг бессерверных технологий был связан с быстрыми циклами разработки и бэкэнд-сценариями, в которых бессерверные функции выступали в качестве связующего звена между разрозненными облачными сервисами. Многие из этих примеров были получены от ранних последователей облачных технологий или от вендоров, использующих модель «функция как сервис» (FaaS) под капотом своих собственных платформ и сервисов. С тех пор мы стали свидетелями того, как все больше компаний используют преимущества бессерверных технологий.
- Расширенная экосистема вспомогательных сервисов способствует появлению новых сценариев использования. Основной сферой применения бессерверных технологий по-прежнему является создание легких, кратковременных эфемерных функций. Однако в последние годы поставщики бессерверных решений расширили экосистему данных и интеграционных сервисов, таких как бессерверные хранилища значений ключей, API-фреймворки и бессерверные векторные базы данных, что позволило расширить разнообразие сценариев использования.
Развивающаяся экосистема бессерверной разработки заставляет по-новому взглянуть на рынок
В нашем последнем исследовании «The Forrester Wave: Functions-As-A-Service Platforms, Q2 2023», посвященном бессерверной разработке, мы сосредоточились исключительно на платформах FaaS, предлагаемых поставщиками гипермасштабных публичных облаков. Хотя FaaS остается основной технологией бессерверной разработки, экосистема расширилась и теперь больше ориентирована на поддержку сценариев использования, а не на общепринятый платформенный подход. Мы будем ориентировать наши предстоящие обзоры «Landscape» и «Wave», посвященные этому рынку, на следующие развивающиеся тенденции:
- Универсальные облачные сервисы заменяют ранние сценарии использования бессерверных разработок. Бессерверные вычисления выходят за рамки FaaS и теперь описывают нативно-облачные платформы разработки, которые практически не требуют ручной инициализации и предлагают автомасштабирование, микробиллинг на основе потребления и масштабирование до нуля. Ранние функции использовались в основном в качестве интеграционного клея в таких сценариях, как фильтрация, маршрутизация, пакетная обработка и обогащение событий. Эти сценарии уходят в прошлое, а на смену им приходят гибкие облачные сервисы «под ключ», созданные для поддержки модели разработки «компонуй и используй».
- Сценарии использования искусственного интеллекта вдохнули новую жизнь в модель бессерверных вычислений. ИИ — тема дня в большинстве категорий продуктов и бизнес-подразделений, и бессерверные вычисления не являются исключением. Учитывая последствия широкого распространения ИИ-нагрузок с точки зрения энергопотребления и дефицита GPU-ресурсов, а также присущий подсказкам генеративного ИИ характер работы по требованию, эфемерная модель бессерверных вычислений оказалась как нельзя кстати для ИИ-приложений.
- WebAssembly (Wasm) стал мощным инструментом для независимых от развертывания бессерверных платформ. Несмотря на то, что большая часть разговоров исходит от вендоров, а не от конечных пользователей, Wasm может стать будущим платформ для бессерверной разработки. Он обладает рядом встроенных преимуществ: время холодного старта резко сокращается, а в демонстрациях было показано время запуска менее миллисекунды. Кроме того, он обеспечивает значительно бóльшую переносимость по сравнению с другими подходами: бинарный формат Wasm совместим с различными браузерами в разных операционных системах и процессорных архитектурах, таких как Intel и ARM.
- Периферийная и бессерверная разработка сблизятся в распределенных сценариях использования. В течение некоторого времени инфраструктура, на которую опирались разработчики сервисов, существовала в одном из двух лагерей, независимо от того, была ли она бессерверной или нет. На одном конце спектра находились публичные облачные дата-центры, предлагавшие десяток или более вариантов размещения в региональном разрезе. На другом конце спектра — провайдеры, ориентированные на периферию, которые обычно возникали из компаний, занимающихся сетями доставки контента (CDN), и инвестировали в тысячи небольших точек присутствия. Мы ожидаем, что эти модели сблизятся и будут в большей степени ориентированы на приложения, сценарии использования и возможности, а не на инфраструктурную парадигму.
Платформы бессерверной разработки являются базовой технологией нативной облачной среды
Учитывая все вышеперечисленные тенденции, вот наше новое определение для рынка.
Бессерверная платформа — это «нативная облачная платформа разработки ПО, которая абстрагирует процесс разработки от базовой облачной инфраструктуры, сложных конфигураций серверов, характеристик времени выполнения и шаблонов развертывания. FaaS является наиболее распространенной реализацией бессерверной разработки и составляет основу бессерверной архитектуры, но рассматривается любая платформа, соответствующая определению. Платформа бессерверной разработки поддерживает развертывание произвольной бизнес-логики, отделяет состояние от базовых вычислений, автоматически масштабируется по требованию, предлагает микробиллинг (часто миллисекундный), работает на управляемой облачной инфраструктуре и поддерживает событийно-ориентированные коммуникации. Кроме того, существуют дополнительные возможности, которые расширяют список сценариев использования платформы бессерверной разработки, такие как сервисы состояния/хранения, распределенная управляемая инфраструктура, асинхронный обмен сообщениями, наблюдаемость и безопасность».