
AWS представила Lambda Web Functions для стандартних HTTP-застосунків
AWS створила Lambda Web Functions — новий тип, який запускає стандартні Node.js HTTP-сервери на Lambda без адаптерів. Пропонує багатоконкурентне виконання, білінг активного CPU, багаторегіональну маршрутизацію одним командою для деплою.
Amazon Web Services оголосила про AWS Lambda Web Functions, новий форм-фактор, який дозволяє розробникам запускати стандартні HTTP веб-застосунки на Lambda без переписування коду у функцію обробника подій. Застосунки, створені з Express, Hono, Fastify, Next.js або будь-яким іншим Node.js фреймворком, можуть бути розгорнуті однією командою, а Lambda забезпечує масштабування, багаторегіональне поширення та білінг активного CPU.
Три форм-фактори Lambda
З цим випуском AWS Lambda тепер пропонує три різні форм-фактори, кожен з яких базується на одній і тій самій технології ізоляції Firecracker. Lambda Event Functions використовує подієво-орієнтовану модель обробки одного запиту з білінгом у реальному часі та призначений для обробки подій, користувачів черг та викликів, спричинених іншими сервісами AWS. Lambda Web Functions використовує орієнтовану на HTTP модель програмування з багатоконкурентним виконанням та білінгом активного CPU і призначений для веб-застосунків, API-бекендів та інтерактивних HTTP навантажень. Lambda MicroVMs пропонують ізольовані, стейтфул пісочничні середовища з керованими користувачем життєвими циклами для запуску ненадійного або генерованого користувачем коду.
Як працюють Web Functions
Середовище кожного виконання Web Function одночасно обробляє до 128 конкурентних запитів, тому сплески трафіку можуть використовувати спільні теплі середовища замість прив'язки кожного запиту до нового середовища. Web Functions враховує лише той час CPU, який код реально використовує, що означає, що час, витрачений на очікування запиту до бази даних або виклику API, споживає мало CPU, а пам'ять враховується, поки існує середовище виконання. За словами AWS, це може зменшити витрати на обчислення для I/O-інтенсивних навантажень, таких як рендеринг на сервері, API-бекенди та AI inference endpoint-и, які стрімлять відповіді токенами.
Розробники пишуть стандартний сервер, який слухає на порту, і читають host та порт зі змінної середовища AWS_LAMBDA_HTTP_ENDPOINT, яку Lambda встановлює автоматично. Розгортання відбувається за допомогою AWS CLI однією командою, aws lambda-web deploy, яка завантажує джерело, створює Web Function, публікує її першу ревізію, приєднує endpoint і повертає живий HTTPS URL. Ревізії — це незмінні знімки розгорнутого коду, а endpoint-и — це HTTPS URL-и, які спрямовують трафік на ревізію або розподіляють його між ревізіями.
Багаторегіональне розгортання та розподіл трафіку
Передача прапора --regions команді deploy розгортає код у кількох регіонах і за допомогою одного глобального URL автоматично налаштовує маршрутизацію на основі латентності, направляючи кожен запит у регіон з найменшою латентністю з максимальними зусиллями до викликаючого. Після змін в коді повторний запуск команди deploy завантажує нову ревізію і за кілька секунд вказує на неї endpoint. Для поетапних релізів одним API-викликом можна розподілити трафік між ревізіями з налаштованими вагами, що робить можливим canary розгортання без додаткових інструментів.
Інтеграція з CloudFront та доступність
Web Functions можуть виступати як origin для розподілів Amazon CloudFront: статичні ресурси постачаються з кешу, а динамічні запити перенаправляються на функцію. Випуск також покращує досвід з private-origin: користувачі прив'язують CloudFront origin access control до Web Function endpoint, тому CloudFront підписує запити і endpoint надає права на його виклик лише тому розподілу, що відповідає моделі private-origin, яку CloudFront вже використовує для Amazon S3.
Lambda Web Functions сьогодні доступні у Східних США (Північна Вірджинія), Східних США (Огайо), Західних США (Орегон), регіоні Азія-Тихий океан (Токіо) та Європі (Ірландія). Web Functions за замовчуванням працює на Node.js 24 (nodejs24.x) на Arm64 і підтримує підключення до Amazon VPC для доступу до ресурсів у межах VPC.
Джерела: AWS News Blog
SiTech — веброзробка з підтримкою AI
Створюємо швидкі та сучасні сайти й інтегруємо AI у бізнес-процеси. Маєте проєкт чи запитання? Із задоволенням допоможемо.