як перевірити, чи може ігровий сервер обробляти клієнтів перед випуском гри?


13

ми розробляємо гру на базі iOS з підтримкою для кількох гравців. поки що все здається справді хорошим, але тепер ми хочемо переконатися, чи може сервер обробляти 10000 клієнтів чи ні. будь-яка ідея, як я можу переконатися, що сервер витримає стільки трафіку?

Відповіді:


15

Для тестування навантаження на трафік існує багато інструментів, але вам також знадобиться перевірити інші речі, які будуть специфічні для вашого ігрового сервера, оскільки мережевий трафік - це лише одна частина рівняння - використання процесора та постійні запити до бази даних два інших, які негайно приходять в голову як важливі фактори, які ви хочете виміряти (безсумнівно, будуть і інші фактори, які вам доведеться визначити, виходячи з ваших знань, як працює ваш ігровий сервер).

Дійсно хорошим способом зробити це може бути написання клієнтської програми " імітація ігрового гравця " та запуск декількох примірників на декількох комп'ютерах. Суть полягає в тому, що це може зажадати використання багатьох комп’ютерів, але деякі місцеві університети можуть мати великі комп'ютерні лабораторії, щоб ви могли запускати їх (професор може зацікавитись вашими результатами тестування, оскільки викладачі університету, як правило, щиро цікавляться хороші дослідження).

Ваш клієнт, можливо, не повинен бути таким витонченим, як гравець, але ви можете переконатися, що він робить наступні речі (він не повинен бути дуже розумним, доки він може бути трохи функціональнішим, ніж п'яний розробник програмного забезпечення, який насправді не слід їхати додому, тому ви, можливо, захочете познайомити персонажів спеціальним чином, щоб вони могли робити дурні речі, такі як прогулянка по стінах, мати необмежений бюджет, щоб купувати випадково підібрані товари у ігрових продавців, мати нескінченну кількість запаси боєприпасів і багато чого іншого:

  • Надіслати текст випадкового чату на довільній основі
  • Навігація у випадкових напрямках по всьому світу (але, як правило, тримається ближче до великих міст)
  • Випадково вибирайте вогонь зі зброї у випадкових напрямках, коли інші гравці поруч
  • Купуйте / продайте випадкові товари у продавців, а іноді і скидайте товари по всьому світу
  • Випадково запалюйте речі (або викликайте інші форми локалізованого знищення)
  • Засмучуйте орди диких тварин і біжіть у зайняте містечко, переслідуючи їх, а потім випадковим чином вирішувати, виходити чи ні (якщо обрано для виходу, можливо, ці дикі тварини почнуть нападати на інших у місті?)
  • Вилікуйте травмованих гравців
  • Відкладіть випадково вибрані магічні заклинання в місцях скупчення людей
  • Готуйте сиру їжу, обробляйте сировинний пиломатеріал та інші матеріали (наприклад, з видобутку) тощо.
  • ... інші прості завдання, які, швидше за все, виконують ваші гравці

Якщо ви підрахували, що у вас буде одночасно 9000 гравців, спробуйте перевірити це принаймні в 3 рази на цю кількість, щоб ви дізналися, як ваші сервери можуть справлятись із завантаженням 27000 симуляторів зайнятих гравців (багато гравців прагнуть простоювати, особливо соціальні типи).

Також ( і це дуже важливо ), якщо ви це зробите, будь ласка, будь ласка, увійдіть із звичайним символом і запишіть відео всіх цих комп'ютеризованих плеєрів, які роблять дурні речі, і поділіться цим відео з нами тут, щоб ми могли добре мати смійся (я думаю, що " п’яний сарай " може бути хорошим заголовком цього фільму, якщо ти знайдеш правильний сценарій в грі)! ;-D


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

Ну просто перевіряйте, що стосується вашої гри (ласкаво просимо!). Я нічого не знав про особливості вашої гри, тому спробував включити багато можливостей у надії, що вона буде висвітлена.
Рандольф Річардсон

Деякі ігри також починаються з попереднього бета-версії, але це може бути складним рішенням, оскільки є неприємний фактор, коли гравцеві можуть виявити, що їм не подобається гра під час її бета-стадії, а потім ніколи не повертаються, щоб спробувати її. знову (хоча проблеми, з якими вони стикалися, були вирішені).
Рандольф Річардсон

2
-1, нереальна відповідь. Розробників жіночих ігор не існує. (Jks, +1, домовилися про візуальний обмін результатами тесту).
deceleratedcaviar

3
Додам, що я зробив саме це, для MMO на портативній консолі; імітовані гравці були найкращою річчю для тестування того, як сервери впораються зі стресом. Ми також влаштовували закриту бета-версію (обмежена приблизно на 500 осіб), і я використовував створені статистичні дані про поведінку бета-тестерів, щоб налаштувати імітованих гравців так, як справжні гравці, наскільки я міг керувати. Після закінчення бета-версії я встановив 40 000 гравців, що імітували себе, грати в хаос із серверами. Багато погроз!
Тревор Пауелл

0

Це відповідь на старе запитання, сподіваємось, що може бути корисним для тих, хто потрапляє сюди за допомогою пошукової системи. У Netgend є тестова платформа, здатна емулювати 50 000 VUsers і може робити всі гнучкі емуляції клієнтів.

Перегляньте щоденники , особливо

  • Налагодження роботи в мережі легко
  • витягує поля з відповідей сервера
  • Тестування продуктивності з бінарними даними

Зауважте, що обробка повідомлень не обмежується http-повідомленнями, вона стосується всіх повідомлень.

Сподіваюся, що це корисно.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.