AWS Какие спецификации мне нужны для того, чтобы сервер онлайн-игр мог разместить 100 000 и более человек?

В большинстве случаев вы не работаете в клиенте MySQL, и вы должны вставлять вставки вместе с помощью соответствующего API.

Например. в JDBC:

connection con.setAutoCommit(false); 
PreparedStatement prepStmt = con.prepareStatement("UPDATE DEPT SET MGRNO=? WHERE DEPTNO=?");
prepStmt.setString(1,mgrnum1);                 
prepStmt.setString(2,deptnum1);
prepStmt.addBatch();

prepStmt.setString(1,mgrnum2);                        
prepStmt.setString(2,deptnum2);
prepStmt.addBatch();

int [] numUpdates=prepStmt.executeBatch();

http://publib.boulder.ibm.com/infocenter/db2luw/v8/index.jsp?topic=/com.ibm.db2.udb.doc /ad/tjvbtupd.htm

-2
задан geisterfurz007 17 January 2019 в 06:32
поделиться

2 ответа

Никто не сможет дать вам ответ на этот вопрос. И если они это сделают, они будут неправы.

Единственный способ узнать, какие ресурсы потребляет система, - это построить ее, а затем протестировать с использованием имитированной нагрузки . Это поможет выявить узкие места в системе (диск, база данных, память, пропускная способность сети).

Затем вы начнете итеративный процесс поиска наихудшего узкого места , переархивирования приложения или изменения компонентов системы, празднования, а затем повторения всего цикла тест-мера-исправление. Добро пожаловать в захватывающий мир управления производительностью приложений!

Вы также можете воспользоваться преимуществами облака, масштабируя свои ресурсы в зависимости от нагрузки. Когда система занята (например, вечером), добавьте больше емкости. Когда все тихо, удалите ресурсы, чтобы сэкономить деньги. Это именно то, что делает Fortnite .

См .: Как бы вы поддерживали плавную игру 125 миллионов игроков в Интернете? Epic Games делится своей историей с Fortnite. | Amazon Game Tech Blog

В зависимости от того, какие данные вы хотите сохранить, вы можете рассмотреть возможность использования Amazon GameLift :

Amazon GameLift полностью управляемый сервис для развертывания, эксплуатации и масштабирования ваших многопользовательских игровых серверов в облаке. Amazon GameLift заменяет работу, необходимую для размещения ваших собственных игровых серверов, включая покупку и настройку оборудования, а также управление текущей деятельностью, безопасностью, хранением и отслеживанием производительности. Возможности автоматического масштабирования Amazon GameLift обеспечивают дополнительную защиту от необходимости платить за большее количество ресурсов, чем вам нужно, и в то же время помогают вашим игрокам находить и присоединяться к играм с минимальным ожиданием.

Читая ваш вопрос, я подозреваю, что ваше заявление еще не было написано. Итак, самое время принять общие архитектурные решения (например, использовать DynamoDB вместо реляционной базы данных, поскольку она обеспечивает быструю и предсказуемую производительность с плавной масштабируемостью), но не слишком беспокоиться о мелких деталях. Во-первых, вам нужно сделать продукт, который люди хотят использовать. Это будет более сложной задачей, чем масштабирование для удовлетворения возможного спроса.

Сконцентрируйтесь на получении первых 100 пользователей, а потом побеспокоитесь о других 100 000.

0
ответ дан John Rotenstein 17 January 2019 в 06:32
поделиться

Вопрос очень субъективен, чтобы ответить. Причина в том, что вам необходимо определить следующие вещи, прежде чем прийти к выводу:

  1. Сколько ЦП требуется на пользователя в месяц?
  2. Сколько памяти требуется на пользователя в месяц? [114 ]
  3. Сколько пропускной способности вам требуется на пользователя в месяц?

Как только у вас появится представление об этих значениях, возможно, вам стоит взглянуть на то, сколько одновременных пользователей вы хотите, чтобы ваш сервер предоставлял. службы, прежде чем масштабировать, чтобы запустить другой сервер.

Так, например, на вашем веб-сайте 50000 пользователей постоянно обращаются к вашему приложению, тогда вы должны выбрать экземпляр ec2, а затем группу автоматического масштабирования и балансировщик нагрузки для обслуживания вашего трафика.

  • Для базы данных вы всегда должны использовать RDS (для реляционной БД). DB на экземпляре EC2 не рекомендуется.

Для EC2 Instance типов, пожалуйста, проверьте instance-types

0
ответ дан Sangam Belose 17 January 2019 в 06:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: