Бессерверные вычисления: различия между версиями

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
[отпатрулированная версия][отпатрулированная версия]
Содержимое удалено Содержимое добавлено
кстати, не обязательно легковесная
релевантнее ссылка
Строка 1: Строка 1:
'''Бессерверные вычисления''' ({{lang-en|serverless computing}}) —
'''Бессерверные вычисления''' ({{lang-en|serverless computing}}) —
стратегия организации [[PaaS|платформенных облачных услуг]], при которой облако автоматически и динамически управляет выделением вычислительных ресурсов в зависимости от пользовательской нагрузки. Основная задача такой стратегии — реализация шаблона «[[функция как услуга]]»<ref>{{Cite news|url=https://www.javaworld.com/article/3210726/application-development/serverless-computing-with-aws-lambda.html|title=Serverless computing with AWS Lambda, Part 1|last=Haines|first=Steven|language=en|work=JavaWorld|accessdate=2018-01-30}}</ref>, при котором для выполнения каждого запроса (вызова функции) создается отдельный [[Контейнер (виртуализация)|контейнер]] или [[виртуальная машина]], уничтожающиеся после выполнения<ref>[https://www.youtube.com/watch?v=p__rV9MfdJs Deep Dive into Architecture] — Scalable microservices with Kubernetes — [[Udacity]]</ref>.
стратегия организации [[PaaS|платформенных облачных услуг]], при которой облако автоматически и динамически управляет выделением вычислительных ресурсов в зависимости от пользовательской нагрузки. Основная задача такой стратегии — реализация шаблона «[[функция как услуга]]»<ref>{{Cite news|url=https://www.javaworld.com/article/3210726/application-development/serverless-computing-with-aws-lambda.html|title=Serverless computing with AWS Lambda, Part 1|last=Haines|first=Steven|language=en|work=JavaWorld|accessdate=2018-01-30}}</ref>, при котором для выполнения каждого запроса (вызова функции) создается отдельный [[Контейнер (виртуализация)|контейнер]] или [[виртуальная машина]], уничтожающиеся после выполнения<ref>{{статья | автор = Neil Savage | год = 2018 | заглавие = Going serverless | издание = [[Communications of the ACM]] | том = 61 | номер = 2 | страницы = 15–16 | doi =10.1145/3171583 | lang = en}}</ref>.


Наименование связано с тем, что пользователям в этой стратегии не нужно иметь дело с выделением и настройкой «серверов» (как инфраструктурных единиц — виртуальных машин, контейнеров, так и [[Сервер (программное обеспечение)|программных серверов]] — серверов баз данных, серверов приложений, экземпляров сред выполнения): все настройки и планирование вычислительных ресурсов, необходимые для запуска кода по требованию или по событию, скрыты от пользователей и управляются облаком. Бессерверный код может быть частью [[Прикладное программное обеспечение|приложений]], построенных на традиционной архитектуре, например, на [[Микросервисы|микросервисах]].
Наименование связано с тем, что пользователям в этой стратегии не нужно иметь дело с выделением и настройкой «серверов» (как инфраструктурных единиц — виртуальных машин, контейнеров, так и [[Сервер (программное обеспечение)|программных серверов]] — серверов баз данных, серверов приложений, экземпляров сред выполнения): все настройки и планирование вычислительных ресурсов, необходимые для запуска кода по требованию или по событию, скрыты от пользователей и управляются облаком. Бессерверный код может быть частью [[Прикладное программное обеспечение|приложений]], построенных на традиционной архитектуре, например, на [[Микросервисы|микросервисах]].

Версия от 09:27, 8 июня 2020

Бессерверные вычисления (англ. serverless computing) — стратегия организации платформенных облачных услуг, при которой облако автоматически и динамически управляет выделением вычислительных ресурсов в зависимости от пользовательской нагрузки. Основная задача такой стратегии — реализация шаблона «функция как услуга»[1], при котором для выполнения каждого запроса (вызова функции) создается отдельный контейнер или виртуальная машина, уничтожающиеся после выполнения[2].

Наименование связано с тем, что пользователям в этой стратегии не нужно иметь дело с выделением и настройкой «серверов» (как инфраструктурных единиц — виртуальных машин, контейнеров, так и программных серверов — серверов баз данных, серверов приложений, экземпляров сред выполнения): все настройки и планирование вычислительных ресурсов, необходимые для запуска кода по требованию или по событию, скрыты от пользователей и управляются облаком. Бессерверный код может быть частью приложений, построенных на традиционной архитектуре, например, на микросервисах.

Стратегия реализована в основных платформах FaaS: AWS Lambda, Google Cloud Functions[англ.], Apache OpenWhisk и основанном на ней сервисе IBM Cloud?!, Azure Functions в облаке Microsoft, сервисе Fn от Oracle. Кроме того, в конце 2010-х годов стратегия получила распространение в реализациях облачных СУБД, таковы, например, Azure Data Lake (работает в Microsoft Azure и динамически выделяет и высвобождает вычистильеные ресурсы, работая с данными в сервисе постоянного хранения), Snowflake (работающая с данными в S3 и создающая вычислительные экземпляры по мере нагрузки), FaunaDB.

Примечания

  1. Haines, Steven. "Serverless computing with AWS Lambda, Part 1". JavaWorld (англ.). Дата обращения: 30 января 2018.
  2. Neil Savage. Going serverless (англ.) // Communications of the ACM. — 2018. — Vol. 61, no. 2. — P. 15–16. — doi:10.1145/3171583.