FaaS отличается от других моделей облачных сервисов, например IaaS и PaaS, по нескольким параметрам:
- Уровень абстракции. 2 IaaS предлагает самый низкий уровень абстракции: пользователи имеют полный контроль над инфраструктурой, программным обеспечением и инструментами, связанными с их технологиями. 2 PaaS добавляет ещё один уровень абстракции: разработчикам не нужно управлять операционной системой, средой выполнения или другими инфраструктурными компонентами приложения, но они по-прежнему будут иметь тонкий контроль над базовыми конфигурациями приложений и инфраструктуры. 2 FaaS позволяет разработчикам выполнять отдельные функции или фрагменты кода в ответ на события без управления базовой инфраструктурой. 3
- Масштабируемость. 2 PaaS масштабируется по мере необходимости, но продумывание и настройка всё ещё зависят от разработчика. 2 FaaS не требует никакого планирования: он легко и быстро самостоятельно масштабируется по мере необходимости. 2
- Ценообразование. 2 PaaS часто обходится дороже, чем FaaS, если у пользователя низкая рабочая нагрузка. 2 FaaS позволяет разработчикам платить только за вызов функции, экономя время, если триггеров событий мало. 2 PaaS лучше подойдёт для постоянных или высоких рабочих нагрузок с точки зрения цены. 2
- Конфигурация. 2 FaaS чрезвычайно быстро настраивается благодаря простоте использования и полностью управляемым решениям. 2 PaaS предлагает больший уровень абстракции, чем другие модели облачных вычислений, однако она всё же требует базовой настройки. 2
Примеры FaaS-платформ: AWS Lambda, Azure Functions, Google Cloud Functions. 4