Функция как сервис (FaaS)

Функция как сервис (Function as a Service, FaaS) — модель облачных вычислений, которая предлагает платформу для выполнения функций, инициированных событиями. Она обеспечивает автоматическое масштабирование, не требующее ручного вмешательства. В сущности FaaS позволяет развёртывать отдельные функции, которые активируются в ответ на определенные события, некоторое (короткое) время работают и отключаются. Тем самым гарантируется, что ресурсы не тратятся впустую. Модель поддерживает автоматическое масштабирование, позволяя запускать экземпляр функции по запросу и завершать его после выполнения, что соответствует его stateless-природе. FaaS-платформы реализуют подход к тарификации по принципу «плати за фактическое использование»: когда функция не работает, она не потребляет ресурсы, экономя деньги. Этим они отличаются от других моделей, таких как Платформа как услуга (Platform as a Service, PaaS), которые предполагают постоянную доступность ресурсов.

Какую проблему решает

Традиционно компании предпочитали работать с собственными центрами обработки данных, что требовало значительных инвестиций в оборудование, программное обеспечение и персонал. Такой подход означал, что ЦОД должен был проектироваться под пиковый спрос, а в остальное время его ресурсы использовались лишь частично. Кроме того, стремительное развитие бизнеса могло опередить возможности ИТ и привести к операционной неэффективности. С другой стороны, модели вида Инфраструктура как услуга (Infrastructure as a Service, IaaS), хотя и предлагают облачные решения, все же возлагают бремя масштабирования ресурсов на пользователя, требуя оплаты за постоянную доступность сервера независимо от фактического использования.

Как именно решает проблему

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

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


Последнее изменение October 9, 2024: [ru] Localize `function-as-a-service` (#3217) (e860547)