Биллинг платформы строится на трёх слоях. Каждый слой отвечает за свой тип нагрузки и тарифицируется по собственным метрикам.
| Слой | Назначение | Примеры нагрузки |
|---|
| Compute | Полноценный серверный runtime (контейнеры) | Next.js SSR, API-серверы, бэкенд-задачи |
| Isolate | Лёгкий edge runtime (V8 isolates) | Edge functions, middleware, ISR |
| Static | Доставка статических файлов и медиа | HTML/CSS/JS, изображения, шрифты |
Дополнительно существует слой Common — кросс-платформенные операционные метрики (сборки, трафик, хранилища KV/D1 и операции D1), которые также могут формировать line items.
| Метрика | Единица | Что отражает |
|---|
invocations | count | Количество выполнений Runtime |
cpu_seconds | seconds | Фактическое процессорное время |
memory_gb_seconds | GB-s | Объём памяти, занятый во времени |
residency_seconds | seconds | Время удержания готовых экземпляров |
streaming_seconds | seconds | Длительность потоковой выдачи |
websocket_seconds | seconds | Время WebSocket-соединений |
| Метрика | Единица | Что отражает |
|---|
invocations | count | Количество isolate-выполнений |
cpu_seconds | seconds | Wall-time выполнения кода |
memory_gb_seconds | GB-s | Интеграл configured_memory × execution_time |
subrequests | count | Внешние операции: D1 + KV + HTTP fetch |
| Метрика | Единица | Что отражает |
|---|
egress_gb | GB | Объём данных, доставленных пользователю |
storage_gb_month | GB-month | Хранение файлов деплоя |
image_transforms | count | Трансформации изображений (resize, format) |
origin_fetch_gb | GB | Запросы к origin-серверу |
| Метрика | Единица | Что отражает |
|---|
build_minutes | minutes | Время сборки проектов |
kv_storage_mb | MB | Объём KV-хранилища |
d1_storage_mb | MB | Объём D1-базы данных |
d1_rows_read / d1_rows_written | count | Операции чтения/записи D1 |
Финальный счёт строится из line items — отдельных начислений по каждой метрике каждого слоя:
- Можно точно определить, какая часть нагрузки увеличила счёт
- Лимиты и overage считаются по каждой метрике отдельно
- Видно, что именно оптимизировать: CPU, память, egress или что-то другое
Приоритет анализа:
- Определите, какие слои использует ваше приложение
- Смотрите метрики соответствующего слоя в Usage
- Сопоставляйте с лимитами плана (страница Лимиты)
- При overage проверяйте line items в инвойсе