Remove ads
З Вікіпедії, вільної енциклопедії
Безсерверні обчислення (англ. serverless computing) — модель хмарних обчислень для яких платформа динамічно керує виділенням машинних ресурсів. Іноді безсерверні обчислення також іменують «Функція як послуга» (англ. Function as a Service, FaaS), тому що одиницею коду є функція, яка виконується платформою.[1] По суті для виконання одного запиту створюється окремий контейнер, який знищується після виконання.[2]
Звісно безсерверні обчислення потребують апаратне забезпечення і цей термін не варто розуміти буквально. Ця назва використовується тому, що користувачам такої платформи не треба мати справу з налаштуванням серверів для запуску коду: усі серверні налаштування, планування обчислювальних ресурсів цілком приховані від користувачів і керуються платформою. Безсерверний код може бути частиною застосунка побудованого на традиційній архітектурі, наприклад, на мікросервісах.
Платформа AWS Lambda, випущена компанією Amazon в 2014[3] році була першою загальнодоступною платформою що пропонувала безсерверні обчислення. Наразі AWS Lambda підтримує Node.js, Python, Java, C Sharp і Go.
Google Cloud Platform пропонує Google Cloud Functions. Для написання функцій використовується JavaScript, для виконання — Node.js.
IBM пропонує OpenWhisk в якості безсерверного середовища виконання з відкритим початковим кодом. OpenWhisk має підтримку Node.js, Python, Java, та Swift.
Ще одним середовищем є Azure Functions від Microsoft Azure.
Безсерверні бази даних розширюють модель безсерверного виконання до рівня баз даних.
Azure Data Lake це сховище даних з високим рівнем масштабування і аналітики. Розгортається в Microsoft Azure. Azure Data Lake Analytics надає розподілену інфраструктуру що динамічно виділяє або вивільнює ресурси, таким чином, клієнт платить лише за використані послуги.
FaunaDB глобально розподілена, транзакційна база даних, що базується на технології від Twitter. Вона охоплює декілька хмарних провайдерів з моделлю оплати «плати по ходу».
Безсерверні обчислення більш ефективні в плані ціни ніж оренда серверів, які зазвичай мають значне недовикористання ресурсів або простій.[4]
Немає необхідності витрачати час на встановлювання та налаштування систем для масштабованості і виділення ресурсів — це відповідальність платформи, яка завжди слідкує за тим, щоб кількість виділених ресурсів відповідала потребам.[4]
Розробник не повинен хвилюватись, наприклад, за обробку HTTP запитів у коді, що спрощує розробку і підвищує її продуктивність.
Безсерверний код може страждати від затримки на запуск в порівнянні з виділеним сервером який постійно запущений. Причиною тому є автомасштабування — платформа зменшує або зупиняє потужності коли немає викликів безсерверного коду.
Діагностика проблем і пошук вад можуть бути ускладненими в порівнянні зі зневадженням на традиційних серверах. Особливо це стосується проблем продуктивності та надлишкового використання ресурсів.[5]
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.