Cloudflare Workers — это serverless платформа для запуска JavaScript/TypeScript кода на Edge-серверах Cloudflare по всему миру. Код выполняется в ближайшем к пользователю дата-центре без холодного старта.
Бесплатный план Workers
| Лимит | Free | Paid ($5/мес) |
|---|---|---|
| Запросов/день | 100 000 | 10 млн включено |
| CPU время | 10 мс | 30 мс (по умолчанию) |
| Workers | 30 | Неограниченно |
Первый Worker
// Простой Worker — отвечает на все запросы
export default {
async fetch(request, env) {
const url = new URL(request.url);
// Редирект old → new
if (url.pathname === '/old-page') {
return Response.redirect('https://example.com/new-page', 301);
}
// Добавить заголовки безопасности
const response = await fetch(request);
const newResponse = new Response(response.body, response);
newResponse.headers.set('X-Frame-Options', 'DENY');
newResponse.headers.set('X-Content-Type-Options', 'nosniff');
return newResponse;
}
};
Деплой через Wrangler CLI
# Установить Wrangler
npm install -g wrangler
# Авторизоваться
wrangler login
# Создать проект
wrangler init my-worker
# Деплой
wrangler deploy
Полезные примеры Workers
- Георедирект — перенаправлять пользователей на локальную версию сайта по стране
- A/B тестирование — случайно распределять трафик между версиями
- Трансформация ответов — изменять HTML «на лету» без деплоя
- Заголовки безопасности — добавлять CSP, HSTS к каждому ответу
- Rate Limiting API — ограничивать запросы с логикой на Worker
✅ Workers KV — key-value хранилище для Workers. Можно хранить конфигурацию, флаги фич, кэш без базы данных.