Никто не сможет дать вам ответ на этот вопрос. И если они это сделают, они будут неправы.
Единственный способ узнать, какие ресурсы потребляет система - это собрать ее, а затем протестировать с использованием имитированной нагрузки . Это поможет выявить узкие места в системе (диск, база данных, память, пропускная способность сети).
Затем вы начнете итеративный процесс поиска наихудшего узкого места , повторной архитектуры приложения или изменения компонентов системы, празднования, а затем повторения всего цикла тест-мера-исправление. Добро пожаловать в увлекательный мир управления производительностью приложений!
Вы также можете воспользоваться Облаком, масштабируя свои ресурсы в зависимости от нагрузки. Когда система занята (например, вечером), добавьте больше емкости. Когда все тихо, удалите ресурсы, чтобы сэкономить деньги. Это именно то, что Fortnite делает.
См .: Как бы вы поддерживали плавную игру 125 миллионов игроков в Интернете? Epic Games делится своей историей с Fortnite. | Технический блог Amazon Game
В зависимости от того, какие данные вы хотите сохранить, вы можете рассмотреть возможность использования Amazon GameLift :
Amazon GameLift - это полностью управляемый сервис для развертывания, эксплуатации и масштабирования ваших многопользовательских игровых серверов на основе сеансов в облаке. Amazon GameLift заменяет работу, необходимую для размещения ваших собственных игровых серверов, включая покупку и настройка оборудования и управление текущей активностью, безопасностью, хранением и отслеживанием производительности. Возможности автоматического масштабирования Amazon GameLift обеспечивают дополнительную защиту от необходимости платить за большее количество ресурсов, чем нужно, и помогают вашим игрокам находить и присоединяться к играм с минимальным ожиданием.
Читая ваш вопрос, я подозреваю, что ваше заявление еще не было написано. Итак, сейчас самое время принять общих архитектурных решений (например, использовать DynamoDB вместо реляционной базы данных, поскольку она обеспечивает быструю и предсказуемую производительность с плавной масштабируемостью), но не слишком беспокоиться о мелких деталях. Во-первых, вам нужно сделать продукт, который люди хотят использовать. Это будет более трудной задачей, чем масштабирование для удовлетворения возможного спроса.
Сконцентрируйтесь на получении первых 100 пользователей, а потом подумайте о других 100 000.