Развертывания
Узнайте о развёртываниях и их жизненном цикле — концепции и лучшие практики для более глубокого понимания.
🗺️ Оркестрация
Запускайте новые серверы за считанные секунды, чтобы удовлетворять потребности в мощности с нашим облачным edge-подходом к вычислениям. Мы относимся к серверам как к скоту, а не домашним питомцам - полностью заменяя неисправные экземпляры вместо того, чтобы вручную «выхаживать» каждый из них.
Напишите нам в Discord чтобы узнать о вариантах гибридной оркестрации и оптимизации затрат на хостинг.
Чтобы полностью понять все плюсы и минусы, давайте сравним различные методы оркестрации. Некоторые игры будут использовать несколько методов оркестрации в зависимости от дизайна игрового цикла.
Привязанные к матчу
Краткоживущие (ограниченные по времени) серверы уменьшают масштаб по завершении матча, обеспечивая наилучшее соотношение цены и производительности.
Сессии обычно автоматизируются через Подбор игроков сервис, который разворачивает серверы точно в срок по строгим правилам и при желании позволяет заполнять уже идущие серверы, чтобы повысить скорость заполнения матчей.
👍 Преимущества
Лучшая экономическая эффективность — масштабирование в реальном времени в соответствии со спросом игроков минуту за минутой.
Минимальные затраты на DevOps благодаря хостингу без привязки к региону: Edgegap автоматизирует 99% задач.
Минимальный пинг благодаря более чем 615 площадкам в публичной облачной инфраструктуре Edgegap.
Самое быстрое масштабирование вверх (burst-способность) в случае неожиданного всплеска трафика.
Высочайший стандарт безопасности и предотвращения читерства игроков (серверный авторитет).
Минимальное влияние неожиданного сбоя сервера на игроков, затрагивающее только один матч.
👎 Недостатки
Внедрение новой ментальной модели оркестрации сначала требует определённых усилий на адаптацию.
Серверы, работающие дольше 24 часов, будут автоматически завершены.
🧩 Лучше всего подходит для
Игры, чувствительные к задержке, — когда оптимизация netcode не может компенсировать высокий ping:
шутеры от первого лица, файтинги, VR и XR (виртуальная и расширенная реальность), …
Игры с изначально заданным верхним пределом длительности матча,
Королевская битва, PvPvE, кооперативные шутеры, MOBA, спортивные игры, ARPG и dungeon crawler'ы, …
Региональное резервирование
Игра с постоянным миром и социальная MMO срок жизни сервера часто превышает отдельные сессии игроков.
Сессии обычно назначаются через Браузер серверов по предпочтениям игроков (автоматически по региону или через пользовательский поиск), с предварительным горизонтальным масштабированием развёртывания в зависимости от региональной ёмкости.
👍 Преимущества
Знакомый и понятный, старомодный подход для закалённых ветеранов.
Высочайший стандарт безопасности и предотвращения читерства игроков (серверный авторитет).
Легко прогнозируемые затраты на основе ежемесячного обязательства.
👎 Недостатки
Более высокая стоимость хостинга — для каждого региона требуется один или несколько простаивающих резервных серверов (пиковая ёмкость).
Более высокие затраты на DevOps — масштабирование, операции и обслуживание дублируются для каждого региона.
Регионы с меньшей базой игроков сталкиваются с высоким ping из-за подключения к серверам, находящимся далеко.
🧩 Лучше всего подходит для
Постоянные миры с пользовательским контентом, хранящимся на сервере, даже когда игроки офлайн.
MMO, песочницы со строительством базы или размещением объектов, экстракшн-шутеры, ...
игры, терпимые к задержкам, — когда не требуется серверная авторитетная физика в реальном времени:
мобильные игры, кооперативные игры, TCG/CCG, пошаговые стратегии, …
Асинхронный мультиплеер, где сбои сервера минимально влияют на игровой опыт:
гонки с призраками, ограбление вражеской базы, строительные/фермерские игры с таймером, …
приложения с тяжёлым процессом инициализации — когда подготовка серверов занимает минуты.
Peer-to-peer
Перенесите усилия разработки с выделенных серверов на релейный netcode для неконкурентных игр.
Связанные темы: listen-серверы, авторитет хоста-игрока, пробивание NAT.
👍 Преимущества
Минимальная стоимость хостинга, требуются только Relay-серверы для решения проблемы пробивания NAT.
Минимальные затраты на DevOps — обслуживание требуется только для клиентских сборок и каналов распространения.
Минимальное влияние неожиданного сбоя сервера на игроков, затрагивающее только один матч.
Легко реализовать и быстро создать прототип, без необходимости разработки backend'а.
👎 Недостатки
Повышенные усилия на разработку peer-to-peer netcode, требующие навыков параллельного программирования.
Худшие задержки ping и наибольшая чувствительность к неблагоприятным сетевым условиям (например, мобильному интернету).
Слабейшая безопасность, уязвимость к атакам man-in-the-middle и перехвату сессий.
Риск потери сессий, когда хост уходит, если только вы не реализуете собственную миграцию хоста.
🧩 Лучше всего подходит для
Кооперативные и казуальные игры — когда читерство не лишает веселья и не ломает игру,
детские игры, игры про исследования, приключения, …
См. наши Distributed Relays для сервиса, обеспечивающего peer-to-peer с лучшей в классе задержкой и безопасностью.
📍 Размещение серверов
Независимо от того, какой метод оркестрации вы выберете, выбор правильного серверного местоположения для группы игроков критически важен для обеспечения максимально возможного ping и оптимального опыта игроков. Узнайте о различных стратегиях размещения серверов и о том, как они влияют на ваших игроков.
Edgegap развёртывает в наилучшей возможной локации с доступной ёмкостью, для быстрых матчей с низкой задержкой.

Оценка сервера
Стратегия оценки сервера использует запатентованную методологию Edgegap, которая оптимизирует размещение серверов для каждого матча индивидуально. Она выполняет ненавязчивую телеметрию, чтобы приблизительно определить сетевую близость каждого игрока к нашим серверным локациям и выбрать сервер, который обеспечивает лучше всего:
отзывчивость - обеспечивает самый низкий ping в среднем для всех игроков,
справедливость - обеспечивает сбалансированный и справедливый ping для всех игроков.
Наш матчмейкер по умолчанию использует стратегию Server Score, чтобы обеспечить наилучший возможный опыт. Чтобы использовать эту стратегию с API развёртывания, укажите публичные IP-адреса игроков или геокоординаты в запросе на развёртывание.
Неудачное размещение - сервер находится далеко, высокий ping для всех игроков:

Несправедливое размещение - неравномерный ping, один игрок находится в невыгодном положении из-за более высокой задержки:

Пример удачного размещения - отзывчивый и справедливый ping для всех игроков:

Геолокация
В качестве альтернативы, укажите желаемые координаты местоположения сервера:
⭐ Рекомендуется: Найдите самый быстрый ping-маяк и отправьте его координаты или IP в поле пользователя.
⚙️ Пользовательский: определите регионы (с координатами) в backend вашей игры, получайте их через пользовательский API.
👉 Проще всего для тестирования: Определите регионы (с координатами), жёстко прописав их в dev-сборках клиента игры.
Эта стратегия не рекомендуется для Развертывания оркестрации, за исключением приложений со строгими нормативными требованиями к межрегиональной передаче данных, или когда IP игрока недоступен.
В качестве альтернативы, позвольте игрокам выбрать постоянный (всегда онлайн) сервер из списка с Браузер серверов.
Блокировка региона
Некоторые студии предпочитают фиксировать стабильные и предсказуемые локации (например, MMO с Постоянное хранение). Рассмотрите Браузер серверов с региональными политиками масштабирования и автоматически назначаемыми резервированиями.
Эта стратегия не рекомендуется для Развертывания оркестрации, за исключением приложений со строгими нормативными требованиями к межрегиональной передаче данных, или когда IP игрока недоступен.
🟢 Качество соединения
Некоторые игры (и игроки) более чувствительны к задержке или лагам, чем другие. Хотя сообщения игроков — отличный индикатор инцидентов или регрессионных багов в масштабе, игрокам может не хватать глубокого понимания сетевых концепций и они быстро возлагают вину на студии, netcode или серверы.
Первопричина некоторых проблем может быть скрыта от игроков, поэтому сотрудничество студии и хостинг-провайдера может быть критически важным. Приоритет Edgegap — всегда предоставлять наилучший возможный сервис.
Если вы получаете множество сообщений от игроков, сталкиваетесь с массовыми сбоями или повторяющимися проблемами, пожалуйста, немедленно свяжитесь с нами через тикет в нашей платформе.
Низкая задержка
Задержка игрока — это совокупность задержек при передаче данных между:
Физическими устройствами — физическим сигналом, проходящим через топологию интернет-сети.
Хост к хосту - возникающая из-за протокола, транспорта и мер безопасности.
Процесс к процессу - возникающая из-за упаковки/распаковки и обработки данных в клиенте/сервере.
Edgegap снижает физическую задержку, размещая серверы ближе к вашим игрокам для более коротких ответов и меньшего числа сетевых переходов. Имея локации у 17 облачных и bare metal-провайдеров, вы получаете лучший в классе ping для игроков в любой точке мира.
Глобальное покрытие серверов и интернета (не только у Edgegap) ограничено такими факторами, как:
Доступность инфраструктуры - качество интернет-соединения в данном регионе может быть недостаточным.
Природные факторы - серверы содержат чувствительные компоненты, требующие стабильности (без землетрясений).
Высокая доступность
Доступность серверов в различных локациях по всему миру со временем меняется, многократно в течение дня. Edgegap автоматически масштабирует вверх/вниз локации по требованию, принимая во внимание:
Всплеск трафика - развёртывания, выполненные в течение 15 минут, формируют тенденции масштабирования.
Требования к ресурсам - общий спрос на vCPU в каждой локации определяет темп масштабирования.
Альтернативы провайдеров - в некоторых удалённых локациях доступно меньше вариантов провайдеров.
Ёмкость провайдера - в некоторых локациях могут быть доступны только машины на 4 vCPU или 8 vCPU.
Качество обслуживания - некоторые провайдеры предлагают лучшее качество сети между ISP в одной и той же области.
Расписание студии - специальные запросы на тестирование и QA, закрытые бета-тесты или турниры.
Все запросы на развёртывание приложений объединяются для оценки спроса в каждой локации. По умолчанию все организации имеют равный приоритет распределения. У студий есть возможность добавить пользовательские Частные пулы серверов.
Пожалуйста свяжитесь с нами, чтобы спланировать релиз, или если у вас есть какие-либо запросы относительно доступности локаций.
Устранение проблем игроков
Проблемы игроков иногда могут быть вызваны ошибками сервера или хостинга, но часто они не связаны с этим — также учитывайте проблемы с кабельным/Wi‑Fi соединением, интернет-провайдером, backend-сервисами или ошибки в низкоуровневых библиотеках клиента/сервера.
При разборе сообщений от игроков или инцидентов учитывайте факторы:
Качество матчмейкинга - по возможности оптимизируйте подбор в пределах одного региона:
Подбор игроков и Пинг-маяки для наших рекомендаций,
Подробный обзор чтобы найти журналы сервера, связанные с сообщениями игроков.
Проблемы региональных сетей и ISP:
локальные интернет-провайдеры (ISP) могут временно устранять инцидент,
некоторые регионы (например, Китай, Россия) могут быть ограничены из-за локальных санкций.
Уровень кэширования - без кэширования ваши сессии могут завершаться по тайм-ауту из-за более медленного развёртывания:
Максимальное время развёртывания - развёртывания могут завершаться неудачей из-за медленного и тяжёлого процесса инициализации:
смотрите Приложения и версии чтобы увеличить время ожидания.
Проблемы с образом сервера или интеграцией на ранних итерациях пользовательских сборочных пайплайнов.
Отображайте ID развёртываний в UI истории матчей клиента чтобы отслеживать сообщения игроков при устранении неполадок.
🔄 Жизненный цикл развёртывания
Развёртывания Edgegap проходят через несколько стадий жизненного цикла, обозначаемых статусом развёртывания.
1. Запуск развёртывания
Развёртывание для целей тестирования можно запустить с помощью:
Unreal Engine - плагина Docker Extension или EGIK для проектов Unreal Engine.
Unity - плагина hosting quickstart для проектов Unity.
Godot - плагина hosting quickstart для проектов Godot.
Dashboard Web UI - простой веб-интерфейс для быстрого тестирования серверов и итераций.
Ручной запуск ваших развертываний с вставкой URL и портов не подойдёт для игры в реальном времени.
Автоматизируйте популярные игровые сценарии для управления сессиями и масштабирования по требованию с помощью одного из:
Короткие раунды
Матчи по запросу
Рейтинговая система и/или Пользовательские правила
Постоянные или раунды
Региональные социальные хабы
Автоматическое назначение и/или Пользовательский поиск
Собственный бэкенд:
Миграция игр в реальном времени
Сохраните request_id (ID развёртывания) и присваивайте Deployments теги чтобы позже идентифицировать и устранять проблемы.
2. Развёртывание
После запуска развёртывания наша система выполнит ряд шагов в быстрой последовательности:
Телеметрия — мы измеряем сетевую отзывчивость от доступных дата-центров до каждого игрока,
Развёртывание — мы резервируем ёмкость и подготавливаем запуск контейнера вашего сервера,
Запуск контейнера — мы запускаем контейнер, устанавливаем зависимости и выполняем инициализацию,
Постобработка — мы добавляем хранилище логов, мониторинг и завершаем развёртывание.
Включить Активное кэширование в вашей версии приложения для развертывания серверов за считанные секунды.
Слишком много запросов 429 - чтобы обеспечить стабильность и предотвратить неожиданные счета, мы ограничиваем частоту запросов для вашей организации до 40 req/s. Свяжитесь с нами чтобы спланировать релизы, оценить запусковой трафик и подготовиться к успеху.
3. Развёртывание готово
После того как развёртывание становится Ready, вашему движку всё ещё есть чем заняться. Движки инициализируют подсистемы и фреймворки, затем загружают ассеты, включая карты, в память. Это происходит после того, как ваше развёртывание становится Ready, и обычно занимает до 1 минуты в зависимости от степени вашей оптимизации.
Повторите подключение игрока несколько раз, пока не истечёт заранее заданный период ожидания, прежде чем выйти и начать новую сессию. Серверы обычно не принимают новые подключения игроков, пока полностью не инициализируются.
Обработка сбоя сервера зависит от вашей политики перезапуска процесса. Состояние сервера может быть потеряно.
В зависимости от статуса Приложения и версии версии вы можете получить:
🟢 Попадание в кэш
Кэширование включено. Развёртывание было быстрее благодаря повторному использованию образа, предварительно загруженного на этой машине.
🟡 Тёплый старт
Кэширование отключено. Развёртывание было быстрее благодаря повторному использованию образа, загруженного для предыдущего развёртывания на той же машине. Включите кэширование, чтобы обеспечить стабильно быстрое развёртывание по всему миру.
🔴 Промах кэша
Кэширование включено. Развёртывание было медленнее из-за внезапного всплеска трафика до завершения распространения кэша. Включение опции «требовать кэшированные локации» в запросе на развёртывание предотвратит это, но может привести к большему числу непригодных к обработке развёртываний во время неожиданных всплесков трафика.
🔴 Холодный старт
Кэширование отключено. Развёртывание было медленнее, образ был загружен во время развёртывания. Включите кэширование для более быстрого развёртывания.
4. Ошибка развёртывания
Ваше развёртывание может в любой момент оказаться в состоянии Unprocessable по неожиданным причинам. Это более вероятно при тестировании вашей интеграции или тестировании новых серверных сборок.
За развёртывания с ошибкой плата не взимается; они автоматически останавливаются через 24 часа.
Шаги по устранению неполадок:
Проверьте статус сервиса Edgegap на нашей странице мониторинга доступности.
Попробуйте локально протестировать контейнер вашего сервера с помощью Docker Desktop, чтобы исключить проблемы Edgegap.
Когда просите о помощи, укажите ID своего развёртывания и любые полезные детали чтобы мы могли быстро провести расследование!
5. Развёртывание остановлено
Облачные развёртывания будут завершены после 24 часов работы в соответствии с нашей политикой санитарной очистки серверов для обслуживания инфраструктуры и чтобы предотвратить накопление неожиданных расходов, когда развёртывание не было корректно остановлено из-за неожиданной ошибки.
Для долго работающих серверов свыше 24 часов рассмотрите использование Частные пулы серверов с Постоянное хранение.
Оптимизируйте свои затраты и заранее останавливайте простаивающие развёртывания с помощью методов:
Версия приложения Политика перезапуска - предотвращает автоматический перезапуск при завершении работы или сбоях.
Максимальная длительность игры - отведённое время в вашей Приложения и версии истекло.
Самостоятельная остановка через DELETE_URL - развёртывание само остановилось после того, как игроки вышли и матч завершился.
Смотрите Unreal Engine и Unity руководства по утилитам SDK и простой интеграции или используйте API.
Остановка из пользовательского backend'а - ваша пользовательская оркестрация сессий может использовать API развёртываний.
Частные пулы серверов Хост, на котором работало ваше развёртывание, был удалён по запланированному действию.
👀 Наблюдаемость
Позвольте игровым серверам взаимодействовать со сторонними сервисами и получать операционные инсайты.
Обнаруживаемость
После состояния Ready развёртыванию назначается URL (fqdn) и внешний порт для каждого внутреннего порта.
Используйте теги развёртываний (до 40 символов), чтобы легко помечать ваши развёртывания и находить их позже.
WebSocket (WS) и защищённые WebSocket (WSS)
Чтобы использовать netcode на основе websocket с Edgegap, у вас есть два варианта:
управляемый сертификат, настраиваемый за 1 минуту без написания кода:
настройте свой Приложения и версии на используйте WebSocket (WS) и включите TLS Upgrade,
используйте URL Edgegap для подключения клиентов (например,
https://5fa53fa00a57.pr.edgegap.net/)
сертификат, управляемый самостоятельно, если вы хотите использовать свой собственный домен:
настройте свой Приложения и версии на используйте Secure WebSocket (WSS),
настройте собственный процесс TLS-сертификата с пользовательской DNS-записью (например, в Cloudflare).
Неперехваченные исключения сервера приведут к перезапуску контейнера развертывания и аннулируют TLS-защиту. В таком случае, остановите ваш сервер и переназначьте игроков на новое развертывание. Состояние сервера может быть утеряно.
Внедряемые переменные
Игровым серверам часто требуется дополнительная информация, такая как IP сервера, значения внутренних портов и другое. Внедрение переменных окружения только для чтения — это надёжный и независимый от облака способ передавать параметры.
Получите значения переменных с помощью Unity SDK, Unreal EGIKили с помощью методов работы с переменными окружения вашего runtime.
Пользовательские переменные
Определите до 20 пользовательских переменных для каждого развертывания, каждая из которых может содержать до 4 КБ строковых данных.
Избегайте использования зарезервированных имён (ниже), иначе ваши пользовательские переменные будут перезаписаны!
Получайте важную информацию, читая переменные, внедрённые в ваши серверы Edgegap:
Идентификаторы
ARBITRIUM_REQUEST_ID- напр.f68e011bfb01.Уникальный ID развертывания, также называемый request ID. Используется для получения дополнительной информации.
URL развертываний всегда имеют формат
{ARBITRIUM_REQUEST_ID}.pr.edgegap.net.
ARBITRIUM_PUBLIC_IP- напр.162.254.141.66.Публичный IP-адрес этого хоста, можно использовать для подключения вместо URL.
ARBITRIUM_HOST_ID- напр.alpha-north-america-70364ef8.Уникальный идентификатор машины, на которой размещено ваше развертывание; общий для других развертываний.
ARBITRIUM_DEPLOYMENT_TAGS- напр.tag1,tag2.Пользовательские теги развертывания, разделённые запятыми, полезные для удобного поиска и фильтрации.
ARBITRIUM_PRIVATE_FLEET_ID- напр.PUBLIC_CLOUD, или ID пула, если размещено на Частные пулы серверов.
Спецификации ресурсов
ARBITRIUM_HOST_IN_PRIVATE_FLEET- напр.false, указывая, размещено ли на Частные пулы серверов.ARBITRIUM_HOST_BASE_CLOCK_FREQUENCY- напр.2300, частота процессора в МГц.ARBITRIUM_DEPLOYMENT_VCPU_UNITS- напр.256, выделенные единицы vCPU (1024 = 1 vCPU).ARBITRIUM_DEPLOYMENT_MEMORY_MB- напр.512, выделенная RAM в МБ (1024 = 1 ГБ).
Управление жизненным циклом
ARBITRIUM_DELETE_URL- напр.https://api.edgegap.com/v1/self/stop/9f511e17/660.Вызывается из развертывания, развертывание будет корректно остановлено.
Требует уникальный одноразовый
ARBITRIUM_DELETE_TOKENвAuthorizationзаголовке.
ARBITRIUM_DELETE_TOKEN- напр.7df4cd933df87084b34ae80d8abde293.ARBITRIUM_CONTEXT_URL- напр.https://api.edgegap.com/v1/context/9170f5211e17/17.Вызывается только из развертывания, возвращает больше сведений о развертывании.
Требует уникальный
ARBITRIUM_CONTEXT_TOKENвAuthorizationзаголовке.
ARBITRIUM_CONTEXT_TOKEN- напр.dfaf50b9333b9ee07b22ed247e4a17e6.
Обнаруживаемость
ARBITRIUM_PORT_GAMEPORT_INTERNAL- напр.7777, внутренний порт для серверного слушателя.ARBITRIUM_PORT_GAMEPORT_EXTERNAL- напр.31504, внешний порт для клиентских подключений.Значения внешних портов рандомизируются для каждого развертывания в целях безопасности.
ARBITRIUM_PORT_GAMEPORT_PROTOCOL- напр.UDP, протокол вашего netcode transport.
Примеры предполагают, что вы назвали свой порт gameport (по умолчанию). Каждый порт добавляет дополнительный набор очищенных Приложения и версии переменных: @Super Port! ⇒ ARBITRIUM_PORT_SUPER_PORT_INTERNAL .
ARBITRIUM_BEACON_ENABLED- напр.true, если развёртывание выполняется на Частные пулы серверов с Пинг-маяки.ARBITRIUM_HOST_BEACON_PUBLIC_IP- напр.139.177.198.69, публичный IP ближайшего маяка.ARBITRIUM_HOST_BEACON_PORT_UDP_EXTERNAL- напр.30199, для измерения пинга по UDP.ARBITRIUM_HOST_BEACON_PORT_TCP_EXTERNAL- напр.30456, для измерения пинга по TCP.
Структурированная информация (JSON в виде строки)
Мониторинг на дашборде
Наш Дашборд предоставляет инструменты для мониторинга масштабируемости вашего сервера и помощи в эксплуатации.
Аналитика
Найдите аналитические дашборды в меню боковой панели в категории Server Hosting & Orchestration.
🌟 Обновитесь до тарифа Pay as You Go чтобы открыть подробные метрики производительности сервера и аналитические сведения:
Общие сведения: отслеживайте релизы с текущим количеством серверов по версиям и обзором использования ресурсов,
Сведения о CPU: устраняйте задержки на серверах из-за ресурсоёмких операций процессора,
Сведения о памяти: предотвращайте перезапуски сервера из-за превышения выделенной памяти,
Сведения о сети: обнаруживайте неэффективные сетевые шаблоны и оптимизируйте netcode.

Карта развертывания
Найдите карту развертывания в на странице сведений о вашем развертывании в Dashboard.
Просматривайте на карте местоположение развертывания, доступные локации и предполагаемые местоположения игроков:

Точки баланса развертывания
Найдите тепловую карту точек баланса развертывания в на странице сведений о вашем приложении в Dashboard.
Просматривайте тепловую карту точек баланса развертывания и фильтруйте по Приложения и версии. Точки баланса — это приблизительные местоположения с одинаковой сетевой близостью к каждому игроку в данном развертывании:

Скопления точек баланса в необычных местах (например, в Гренландии) указывают на подбор игроков, находящихся далеко друг от друга. Узнайте о Развертывания и Пинг-маяки оптимизации подбора игроков.
Журналы развертывания
Найдите журналы развертывания в на странице сведений о вашем развертывании в Dashboard.
Журналы развертывания отображают сведения о Развертывания:

Журналы контейнера
Найдите журналы контейнера в на странице сведений о вашем развертывании в Dashboard.
Проверяйте журналы игрового сервера в случае проблем или при отладке:

После остановки развертывания журналы контейнера удаляются. Настройте стороннее S3-хранилище журналов для сохранения журналов.
Метрики контейнера
Найдите метрики контейнера в на странице сведений о вашем развертывании в Dashboard.
Просматривайте метрики контейнера (процессор, память, сеть), чтобы:
определять типичные проблемы соединения, когда Развертывания,
обнаруживать неэффективные паттерны реализации, вызывающие всплески использования ресурсов,
точно определять неэффективное использование ресурсов в конкретных сценариях,
проверять изменения использования ресурсов вашего сервера во время оптимизации,
сравнивать потребление ресурсов и длительность инициализации вашего сервера.
Исторические метрики отображают средние значения с интервалом 1 минута и доступны на бесплатном тарифе.
🌟 Обновитесь до тарифа Pay as You Go чтобы открыть точные метрики с интервалом 1 секунда.

Контекст и статус
Дополнительные сведения о развертывании можно получить в формате JSON:
изнутри развертывания (игрового сервера), используя Deployment Context API,
извне развертывания (бэкенд / сторонняя система), используя Deployment Status API.
Too Many Requests 429 — для Context и Status API действует ограничение 20 запросов/с на организацию. Эти API предназначены для использования во время специальных операций, а не для автоматической оркестрации сессий.
Используйте Развертывания для собственной оркестрации сессий, чтобы избежать ограничения частоты запросов и обеспечить масштабируемость.
Фильтрование развертываний
Чтобы быстро искать среди всех развертываний, вы можете использовать наш дашборд:

В качестве альтернативы, позвольте игрокам выбрать постоянный (всегда онлайн) сервер из списка с Браузер серверов.
Получайте список развертываний через API и применяйте фильтры с помощью бэкенд-интеграций:
в или nin
[ "7e709a0d8efd", "4ba353100b4b" ]
в или nin
[ "tagA", "tagB" ]
в или nin
[ "my-app", "my-other-app" ]
в или nin
[ "1.0.0", "prod" ]
в или nin
[ "fleet-eu", "fleet-us" ]
ilike
"%-eu%"
в или nin
[ "alpha-north-america-95fab093" ]
ilike
"%north-america%"
Сортируйте результаты по нескольким полям в порядке их указания в запросе:
asc или desc
available_session_sockets
asc или desc
Примеры запросов фильтра:
Не забудьте добавить Authorization заголовок с вашим API-токеном Edgegap в запрос.
Вебхуки
Получайте простые HTTP-уведомления в бэкенде игры об изменениях в Развертывания указав URL вебхука в вашем API-запросе к развертыванию. Доступно для:
При готовности: контейнер развертывания успешно запущен (после этого сервер начинает инициализацию).
При ошибке: развертывание не удалось запустить, и Развертывания произошла ошибка.
При завершении: Развертывания и игровой сервер больше недоступен.
Вебхуки Ready и Error никогда не будут вызваны для одного и того же развертывания.
Вебхуки — это основной рекомендуемый способ для пользовательских интеграций бэкенда с развертыванием.
Вебхуки не повторяются, и могут быть потеряны, если ваш бэкенд не обработает запрос из-за ограничения частоты или ошибки. Если вы не получите вебхук в ожидаемый срок, используйте Status API.
🚨 Устранение неполадок
При устранении неполадок с деплоями:
убедитесь, что в вашем Развертывания и Развертывания,
запустите сервер локально, чтобы исключить ошибки интеграции,
ознакомьтесь со шагами по устранению неполадок на этой странице,
свяжитесь с нами в Discord сообщества и укажите ID вашего деплоя.
Последнее обновление
Это было полезно?

