Розробка Serverless та Edge Functions

Наша компанія займається розробкою, підтримкою та обслуговуванням сайтів будь-якої складності. Від простих односторінкових сайтів до масштабних кластерних систем, побудованих на мікро сервісах. Досвід розробників підтверджено сертифікатами від вендорів.
Розробка та обслуговування будь-яких видів сайтів:
Інформаційні сайти або веб-програми
Сайти візитки, landing page, корпоративні сайти, онлайн каталоги, квіз, промо-сайти, блоги, ресурси новин, інформаційні портали, форуми, агрегатори
Сайти або веб-програми електронної комерції
Інтернет-магазини, B2B-портали, маркетплейси, онлайн-обмінники, кешбек-сайти, біржі, дропшиппінг-платформи, парсери товарів
Веб-програми для управління бізнес-процесами
CRM-системи, ERP-системи, корпоративні портали, системи управління виробництвом, парсери інформації
Сайти або веб-програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, конструктори сайтів, портали надання електронних послуг, відеохостинги, тематичні портали

Це лише деякі з технічних типів сайтів, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Пропоновані послуги
Показано 20 з 20 послугУсі 2065 послуг
Налаштування Neon (Serverless Postgres) для веб-застосунку
Середня
від 1 робочого дня до 3 робочих днів
Налаштування Turso (SQLite Edge) для веб-застосунку
Середня
від 1 робочого дня до 3 робочих днів
Реалізація Serverless Warming для зниження латентності
Середня
від 1 робочого дня до 3 робочих днів
Налаштування Serverless моніторингу (Lumigo / Datadog Serverless)
Середня
від 1 робочого дня до 3 робочих днів
Реалізація Serverless Scheduled Tasks (CloudWatch Events / Cron)
Середня
від 1 робочого дня до 3 робочих днів
Часті питання
Наші компетенції:
Етапи розробки
Останні роботи
  • image_website-b2b-advance_0.png
    Розробка сайту компанії B2B ADVANCE
    1262
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1171
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    874
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1094
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    831
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Розробка веб-сайту для компанії ФІКСПЕР
    851

Serverless-розробка: AWS Lambda, Vercel Functions, Cloudflare Workers, Edge

Serverless не означає "без сервера". Серверу є — ви просто не управляєте ними. Правильніше читати це як "без менеджменту серверів": немає патчинга ОС, немає настройки nginx, немає моніторингу дискового простору. Функція отримує подію, обробляє, повертає відповідь. Провайдер сам вирішує, на чому це запустити.

AWS Lambda: потужність та операційна складність

Lambda — найзріліша платформа з найбільшим набором триггерів: API Gateway, SQS, SNS, S3, DynamoDB Streams, EventBridge. Це важливо для складних event-driven архітектур.

Cold start — головна біль Lambda на Node.js: від 200ms до 1.5s в залежності від розміру бандла та VPC. У VPC холодний старт був до 10 секунд до 2019 року, тепер покращили, але він все ще довший. Для production-функцій з latency-вимогами: Provisioned Concurrency (тримає інстанси прогрітими), SnapStart для Java, мінімізація бандла через tree-shaking.

Практичний кейс: функція обробки завантажених зображень (ресайз, WebP-конвертація, загрузка в S3). Бандл з sharp важив 40MB через нативні бінарники. Рішення — Lambda Layer з sharp, основна функція 800KB. Cold start впав з 3.2s до 400ms.

Lambda Layers — загальні залежності між функціями. До 5 шарів на функцію, кожен до 250MB. Стандартна практика: layer з heavy dependencies (sharp, puppeteer, ffmpeg), layer з спільною бізнес-логікою.

Інфраструктура Lambda через AWS CDK або Terraform. SAM — для тих, хто тільки починає, CDK — для серйозних проектів з типобезпекою.

Vercel Functions та Edge Runtime

Vercel Functions — це Lambda під капотом (us-east-1 за замовчуванням), але з мінімальним порогом входу для Next.js-проектів. API Routes та Route Handlers деплоятся автоматично. Serverless функції на Node.js runtime з лімітом у 300 секунд на Vercel Pro.

Edge Runtime принципово іншій: функція запускається на V8 isolate у ближайшій до користувача точці CDN-мережі Vercel (120+ регіонів). Немає cold start як такого — isolate стартує за ~0ms. Але жорсткі обмеження: немає Node.js API (fs, crypto через Web API), немає доступу до баз даних через TCP (тільки через HTTP API), розмір бандла до 4MB.

Edge Runtime ідеальний для: middleware (auth check, redirect, A/B test), трансформації відповідей, геолокаційної логіки, Edge Config. Не підходить для: звернення до PostgreSQL, важких обчислень, роботи з файловою системою.

Cloudflare Workers: справжній Edge

Workers запускаються на V8 isolates у 300+ точках присутності Cloudflare. Latency для користувача — буквально ближайший дата-центр. Cold start < 1ms.

Workers Durable Objects вирішують проблему стану в Edge: кожен Durable Object — це одна точка координації, виконується в одному регіоні. Ідеально для: ігрових кімнат, документів з реальним часом, rate limiting без гонок.

Workers KV — eventually consistent сховище. Запис розповсюджується по всіх регіонах за ~60 секунд. Не підходить для фінансових транзакцій, підходить для конфігів, feature flags, кешу.

D1 — SQLite на Edge. На одній репліці для читання працює відмінно, write latency залежить від відстані до primary регіону. Для глобальних write-heavy додатків — не найкращий вибір.

Екосистема: Hono.js — мінімалістичний роутер, працює на Workers, Deno, Bun, Node.js. Якщо потрібен єдиний код для Edge та сервера — хороший вибір.

Коли serverless не підходить

Довгі обчислення (>15 хвилин на Lambda, >30 секунд на Vercel) — потрібен Fargate або звичайний сервер. WebSocket-сервер з станом — нема постійного процесу. Задачи з частим звертанням до диску — еphemeral storage, /tmp на Lambda 512MB–10GB. Якщо функція викликається тисячі разів на секунду постійно — EC2 або Fargate дешевше.

Vendor lock-in — реальна проблема. Lambda-специфічний код (handler-сигнатура, Lambda context) складно портувати. Hono.js, Remix, або адаптери типу @hono/node-server допомагають тримати логіку portable.

Observability

Без нормального observability serverless — чорна скринька. Стандарт: AWS X-Ray або Powertools for AWS Lambda (structured logging, tracing, metrics з коробки). Для мультиоблачного стеку — OpenTelemetry з експортом у Grafana Cloud або Honeycomb.

Distributed tracing критичний коли функція А викликає функцію Б через SQS — без trace ID неможливо зв'язати логи.

Процес роботи

Починаємо з аналізу паттерну нагрузки: якщо трафік непередбачуваний або рідкий — serverless дасть економію. Якщо стабільно високий — може виявитись дорожче. Проектуємо границі функцій по принципу single responsibility. Розробляємо локально через SST, Wrangler або LocalStack. CI/CD з preview deployments обов'язково.

Графік

Serverless API для стартапу (10–20 функцій): 2–5 тижнів. Міграція монолітного Laravel/Node API на Lambda: 4–10 тижнів в залежності від обсягу. Edge Middleware + Workers для глобального продукту: 2–4 тижні.