Перейти к содержимому

Использование ресурсов

Страница Usage нужна для ежедневного контроля: где растёт нагрузка и почему меняется счёт.

МетрикаНа что влияет
invocationsЧастота выполнения Runtime
cpu_secondsСтоимость вычислений
memory_gb_secondsСтоимость использования памяти
compute_secondsСтоимость времени работы процесса, включая потоковые ответы и WebSocket
МетрикаНа что влияет
cu_secondsСтоимость Isolate Compute
cpu_secondsАктивная нагрузка edge-логики; breakdown
memory_gb_secondsEffective memory limit во времени; breakdown
subrequestsВнешние операции (KV, fetch); diagnostic/control
МетрикаНа что влияет
egress_gbСтоимость доставки файлов
storage_gb_monthСтоимость хранения артефактов
image_transformsСтоимость трансформации изображений
origin_fetch_gbСтоимость обращений к origin
МетрикаНа что влияет
cu_hoursСтоимость CU-weighted вычислительного времени БД
storage_gbСтоимость хранения данных (включает written_data)
data_transfer_gbСтоимость сетевого трафика к БД
extra_databasesСтоимость активных баз данных
extra_branchesСтоимость активных веток БД
МетрикаНа что влияет
build_minutesСтоимость сборок
kv_storage_gb_monthСтоимость хранения KV во времени
kv_read_million_unitsСтоимость KV reads
kv_write_million_unitsСтоимость KV writes
kv_storage_mbHard cap объёма KV
  1. Смотрите дневной тренд по каждой метрике
  2. Выделяйте дни с резким ростом (spikes)
  3. Сверяйте всплески с релизами и изменениями трафика
  4. Проверяйте, какая именно метрика и какого слоя дала основной вклад в gross/extra usage
  1. Откройте Usage за текущий период.
  2. Определите, какие слои использует ваше приложение.
  3. Найдите метрику с наибольшим отклонением от базового тренда.
  4. Сопоставьте отклонение с релизом, фичей или нагрузочным событием.
  5. Примените оптимизацию и сравните результат на 7-дневном окне.
  • Рост cpu_seconds при стабильных invocations — усложнение обработки запроса
  • Рост memory_gb_seconds — большие объекты и долгие операции
  • Рост compute_seconds при стабильном трафике — долгие ответы, WebSocket-соединения или неэффективное удержание экземпляров
  • Рост subrequests — массовые обращения к KV/fetch в цикле
  • Рост cpu_seconds при стабильных invocations — усложнение edge-логики
  • Рост memory_gb_seconds — избыточный configured memory limit
  • Рост kv_storage_gb_month — крупные значения, много ключей без TTL или отсутствие cleanup
  • Рост kv_read_million_units — частые reads или чтение крупных значений
  • Рост kv_write_million_units — частые writes, большие metadata/value или churn ключей
  • Рост egress_gb — увеличение размера файлов или трафика
  • Рост origin_fetch_gb — низкий cache hit rate
  • Рост image_transforms — много вариантов изображений
  • Рост cu_hours — долгоживущие соединения, частые запросы, большой CU size, отсутствие connection pooling
  • Рост storage_gb — накопление данных, раздутый WAL, отсутствие очистки
  • Рост data_transfer_gb — тяжёлые выборки, отсутствие пагинации
СлойСценарийЧто делать
ComputeМного вызововкэш, дедупликация, rate limiting
ComputeВысокий CPUпрофилирование, precompute
ComputeРост памятипотоковая обработка, уменьшение данных
IsolateМного subrequestsбатчинг KV, кэширование fetch
IsolateВысокий CPUвынос тяжёлой логики в Compute
Runtime KVРост storageTTL для временных ключей, удаление старых данных, уменьшение payload
Runtime KVМного reads/writesбатчинг, локальный cache, уменьшение размера value/metadata
StaticВысокий egressсжатие, оптимизация бандлов
StaticCache missувеличение TTL, stale-while-revalidate
PostgreSQLВысокие CU-часыconnection pooling, авто-suspend, меньший CU size
PostgreSQLРост storageVACUUM, архивирование, удаление старых данных
PostgreSQLВысокий transferпагинация, выборка только нужных колонок

Usage-метрики могут появляться с небольшой задержкой из-за агрегации событий. Для финансовой сверки используйте значения закрытого расчётного периода.