New World — это очень популярная многопользовательская онлайн-игра (MMO), созданная Amazon Games и выпущенная в сентябре 2021 года. Её пользователи создают собственных персонажей и попадают в обширное царство под названием Aeternum, взаимодействуя с тысячами других виртуальных искателей приключений.
В отличие от сессионной игры, игроки не теряют свои достижения после выхода из системы. Вместо этого персонажи со временем растут, накапливая предметы, встречаясь с товарищами и приобретая навыки экспедиции. Для игроков игра представляет собой чрезвычайно захватывающий опыт: им не нужно ждать загрузки экранов или других прерываний. Это мы называем "бесшовность" – ценная особенность игры, которую разработчики могут реализовать, используя решения сервисов Amazon Web Services (AWS), которые максимально удобны для создания пользовательского интерфейса, поддерживая и управляя серверной структурой, которая обеспечивает доступность игры практически круглосуточно и без выходных по всему миру.
Разработчики создали New World, используя уникальную архитектуру, основанную на различных экземплярах Amazon Elastic Compute Cloud (Amazon EC2), которая обеспечивает безопасные вычислительные мощности с возможностью изменения размера практически для любой рабочей нагрузки. В то время как традиционная MMO моделирует, перерисовывает, анализирует и обрабатывает состояния и действия пользователя примерно пять раз в секунду, New World делает это 30 раз в секунду.
Для каждого из виртуальных миров Aeternum клиенты подключаются к одной из четырех удаленных точек входа (REP). Эти REP являются единственными общедоступными IP-адресами, и именно с ними игра обеспечивает отказоустойчивость и безопасность. Каждая из четырех REP представляет собой отдельный инстанс Amazon EC2 C5, в частности инстанс Amazon EC2 C5.2xlarge. За каждой группой REP скрыто семь вычислительных блоков, каждый из которых представляет собой инстанс Amazon EC2 C5.9xlarge, которые создают набор того, что разработчики New World называют "хабом". Каждый концентратор соответствует двум непоследовательным подразделениям сетки, которая перекрывает воображаемый мир, причем каждая сетка представляет собой объем физической симуляции.
По мере того, как игрок перемещается по игре, информация о состоянии передается от экземпляра концентратора к экземпляру концентратора, распределяя вычислительную нагрузку по виртуальным серверам, размещенным по всему миру в нескольких регионах AWS, физических местоположениях, содержащих кластеры центров обработки данных. В игре также есть сессионные режимы, в которых пользователи участвуют во временных приключениях. Сеансы поддерживаются отдельным пулом концентраторов, совместно используемых в зависимости от доступности. Когда пользователи завершают свой квест, инстанс Amazon EC2 возвращается в общий пул.
В совокупности экземпляры Amazon EC2 для одного мира в Aeternum могут имитировать более 7000 объектов ИИ и сотни тысяч объектов для 2500 игроков. Каждый набор серверов часто обрабатывает миллионы изменений состояния в секунду, выбирая соответствующие данные для создания индивидуальных иммерсивных представлений. Игра записывает состояние в Amazon DynamoDB, быстрая и гибкая служба базы данных NoSQL с производительностью в миллисекунды практически в любом масштабе, которая хорошо подходит для игровых данных, которые часто имеют низкую связность и структуру. Используя Amazon DynamoDB, игра смогла вырасти с одного тестового сервера во время разработки до более чем 500 рабочих серверов без изменения кода. Кроме того, Amazon DynamoDB обрабатывает около 800 000 операций записи каждые 30 секунд для сохранения состояния игры, обеспечивая высокую производительность и надежность, что означает, что разработчики могут восстанавливать состояние, не повреждая данные персонажей игроков.
Получение информации о данных для улучшения взаимодействия с пользователем чрезвычайно важна для быстрого и точного выявления потенциальных проблем почти в реальном времени без дополнительного тестирования. Для сбора потоков телеметрии из каждого мира и игрока разработчики используют Amazon Kinesis Data Streams — бессерверный сервис потоковой передачи данных, который упрощает сбор, обработку и хранение потоков данных практически любого масштаба. Amazon Kinesis Data Streams получает данные из сотен тысяч источников с задержкой в доли секунды и передает их в Amazon Kinesis Data Firehose — сервис извлечения, преобразования и загрузки, который надежно собирает, преобразует и доставляет потоковые данные в озера данных, хранилища данных и аналитику. Сервисы. Используя эти решения, New World разработчики извлекают информацию за секунды или минуты, а не за часы или дни. Фактически, каждую минуту Amazon Kinesis Data Firehose передает 23 миллиона событий в Новом Свете в Amazon Simple Storage Service (Amazon S3) — службу хранения объектов, предлагающую лучшую в отрасли масштабируемость, доступность данных, безопасность и производительность. Затем данные, хранящиеся в Amazon S3, обрабатываются с помощью аналитических решений AWS, таких как Amazon Athena , бессерверный интерактивный сервис запросов, который упрощает анализ данных в Amazon S3 с использованием стандартного SQL.
Каждая группа команды разработчиков игры New World использует огромный поток данных. Аналитики данных могут использовать эту информацию для получения конкретных сведений, например, о том, с каким волком в лесу сражались чаще всего. Затем геймдизайнеры используют эту информацию для модификации игры в режиме реального времени. Что касается операционной деятельности, Amazon Games может предвидеть проблемы с обслуживанием и быстро их устранять.
В качестве моста между решениями AWS, лежащими в основе игры, и их внешними приложениями New World использует Amazon API Gateway — полностью управляемый сервис, который позволяет разработчикам легко создавать, публиковать, поддерживать, отслеживать и защищать API практически любого масштаба. API служат входной дверью для доступа приложений к данным, бизнес-логике или функциональным возможностям серверных служб, а New World каждую минуту выполняет 200 миллионов вызовов Amazon API Gateway.
Для поддержки известных основных игровых действий New World использует AWS Lambda, бессерверную службу вычислений, управляемую событиями, которая позволяет разработчикам запускать код для серверной службы без подготовки или управления серверами. Функции Lambda поддерживают микросервисы в глобальных сервисах — достижениях, каналах, глобальном уникальном именовании пользователей — а также в локальных сервисах, таких как очереди, контракты, сеансы, гильдии и персонажи. Каждая функция AWS Lambda работает в изолированной среде с собственными ресурсами и представлением файловой системы, обрабатывая более 150 миллионов вызовов в минуту.
Масштабируемость набора решений AWS помогла Amazon Games удовлетворить непредвиденный потребительский спрос, который значительно превзошел прогноз. New World стала пятой игрой по количеству одновременных пользователей в истории службы распространения видеоигр Steam: за первые выходные ее одновременно использовали более 900 000 человек. New World — это действительно MMO-игра, созданная в облаке.
Категория: Создание игр | Добавил: Gnomov (06 Мая 2022)
| Автор: Игродел
Также если вы считаете, что данный материал мог быть интересен и полезен кому-то из ваших друзей, то вы бы могли посоветовать его, отправив сообщение на e-mail друга:
Игровые объявления и предложения:
Если вас заинтересовал материал «Уникальная онлайн архитектура бесшовной MMO «New World»», и вы бы хотели прочесть что-то на эту же тему, то вы можете воспользоваться списком схожих материалов ниже. Данный список сформирован автоматически по тематическим меткам раздела.
Предлагаются такие схожие материалы:
Если вы ведёте свой блог, микроблог, либо участвуете в какой-то популярной социальной сети, то вы можете быстро поделиться данной заметкой со своими друзьями и посетителями.