Стресс-тестирование игрового сервера без пользователей?

12

Я работаю над карточной игрой и ее сервером. Там будет лобби со множеством столов и множеством игроков. Единственная проблема заключается в том, как я могу увидеть, как он может обрабатывать сотни одновременных пользователей без сотен одновременных пользователей?

Как обычно это делается?

jmasterx
источник
Посмотрите, поможет ли мой ответ на подобный вопрос в любом случае: stackoverflow.com/questions/7940967/…
Грег Балайевич

Ответы:

23

Два слова: безголовый клиент.

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

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

Патрик Хьюз
источник
8

Я думаю, ты беспокоишься о неправильных вещах, Майло. Я вижу из ваших других вопросов, которые вы планируете написать на C ++.

Даже не очень хорошо закодированный сервер, написанный на языке сценариев, сможет обрабатывать 100, если не 1000 запросов, без явного отставания в карточной игре.

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

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

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