1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
  2. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Туториал Проверяем свой сервер,машину на мощь. (Stress-test)

Тема в разделе "Руководства, инструкции, утилиты", создана пользователем Nightfear, 23 июл 2013.

?

Полезный туториал/тема?

  1. Да

    29 голосов
    87,9%
  2. Нет

    4 голосов
    12,1%
  1. Автор темы
    Nightfear

    Nightfear Старожил Пользователь

    Баллы:
    103
    Имя в Minecraft:
    nightfear
    [​IMG]
    Уже больше чем 2 года меня беспокоит тема о стресс-тесте сервера. Как можно узнать запредельные и придельные возможности сервера и каким образом это можно измерять?!
    Много постов по типу:
    • " Сколько слотов открывать с таким-то и таким-то компом или хостингом? "
    • " Сколько потянет слотов хостинг? "
    • и т.п.
    Я решил создать этот туториал-опрос для того, что бы сравнивать значения и показатели серверов и окончательно понять статистику нагрузки сервера. Предлагаю делать обозревание своего сервера в плане его работоспособности и вывешивать статистику от которой можно будет оттолкнутся и найти ответы на множество вопросов.

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

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


    Для качественных результатов я прошу Вас делать всё четко по инструкции(Тесты будут проходить , в основном, на чистых серверах без плагинов и на различных ядрах).

    На данный момент поисков есть такие альтернативы тестирования машины и сервера :


    1) Тестирование ботами, которые летают по карте.
    Работает только на версии 1.5.2 сервера.
    (буду ждать апдейта от Девелопера)
    Суть стресс-теста : увидеть нагрузку зависимую от кол-ва игроков зашедших на сервер.

    Что бы запустить ботов которые будут заходить к Вам на сервер и хаотично летать нужно:

    Настроить сервер для теста:
    1. Загрузить чистый сервер minecraft-а.
    2. Запустить(дать возможность погрузится настройкам).
    3. В конфиге сервера(bukkit.yml,server.properties) поставить connection-throttle: 0 и allow-flight=true, online-mode=false, max-players=500 (например, если вы думаете, что ваш сервер 500 ботов выдержит).
    С настройкой серверной части закончили.
    Настроить клиентскую часть:
    Для работы *клиент-скрипта* вам понадобится Pyton и еще пару скриптовых штук.​
    Качаем и устанавливаем себе:
    1. Python.
    2. Pycrypto.
    Далее качаем саму бот-систему, которую можно частично назвать *клиентом*:
    Распаковываем и кладем куда-то поближе к корневому каталогу(что-то на подобие С:\bot\, или как у меня C:\pyCraft-bots\).
    Запускаем бот-систему
    1. Пуск --> Выполнить --> cmd . *открытие консоли
    2. Идем в папочку с бот-системой (C:\Users\Администратор> cd \pyCraft-bots\ ).
    3. Вводим такое : *start.py -x -b 500 -s IP-Вашего_сервера 25565 -u nickname*
    4. Enter.
    5. Profit !!!11! 500 ботов начнут подключатся к серверу.
    Тут же консоль начнет бесится и выдавать кучу всякого хлама(как я понимаю такого быть не должно, но оно работает и черт с ним. Я не имел опыта работы с Питоном, тем более не я писал этот скрипт, по-этому закинул дело с ошибками).
    Кто переведет и сделат гайд как для ОС Windows - Буду очень благодарен.
    Сейчас на прописывание аналогичного дейсвия для Linux нету времени.
    P.S. Хотя для трушных линукс-дрочеров то что написано ниже не проблема. Всё понятно и так.​
    If you're on linux then installing is a breeze, simply install the following (example on an aptitude based system)
    apt-get install python-pip
    apt-get install build-essential
    apt-get install python-dev
    and then run in the directory you extracted/cloned the repo to (see below)
    pip install -r requirements.txt
    Once you've got everything installed, clone the git repository and checkout to the "bots" branch. Alternatively for those who aren't git savvy, simply extract this .zip archive somewherehttps://github.com/ammaraskar/pyCraft/archive/bots.zip
    Now, open the command line/terminal and change directory to the place where you saved the repo. Now run the following command python start.py -x -b <bot count>

    Do note that these bots can only be used in offline mode, that's what the parameter -x does and -b naturally represents the number of bots. These bots will fly around and hence assume that they have the appropriate permissions to do so. So make sure you allow them to fly!

    Настоятельно прошу Вас оформлять комментарии и ответы с вашими результатами тестов по форме, которая написано специально для Вас , ниже.

    Машина
    1. VDS,VSP,Личный сервер(домашний).
    2. CPU.
    3. RAM.
    4. OS (Linux,debian,CentOS,WinServer).
    Сервер
    1. Ядро,версия(Craftbukkit, spigot, libigot, Bukkit and etc.)(1.5.2, 1.6.2 and etc.).
    2. Строка запуска сервера( .sh , .bin , .bat).
    3. Сколько ботов удалось запустить при средней загрузке сервера(когда CPU иногда или не на долго достигает отметки в 100% загруженности, т.е. 70-95% всех ядер).
    4. Сколько ботов удалось запустить при максимальной загрузке сервера(когда CPU постоянно на 100% загружен).
    5. Если есть возможность снимать на видео как сервер будет реагировать на такой поток ботов - буду только рад.


    2) Тестирование взрывами ТНТ(динамита) на сервере.
    Суть стресс-теста: Узнать за какое время взорвется шар R=10 кубов динамита(~ 6056 кубов).
    Настроить сервер для теста:
    1. Загрузить чистый сервер minecraft-а.
    2. Запустить(дать возможность погрузится настройкам).
    3. Установить плагин WorldEdit, что бы выставить шар динамита радиусом 10 кубов.
    С настройкой серверной части закончили.
    Настроить клиентскую часть:
    1. Заходим на сервер и делаем себя Администратором(/op).
    2. Используем команду *//sphere tnt 10* , после чего Вас поместит в центр шара. Выберетесь наружу.
    3. Возьмите зажигалку и секундомер.
    4. В то время как поджигаете - засекайте время.
    5. По окончанию всех взрывов(~ 6056 кубов ТНТ) остановите секундомер. Это время Вам и надо будет указать в форме для тестов.
    Настоятельно прошу Вас оформлять комментарии и ответы с вашими результатами тестов по форме, которая написано специально для Вас , ниже.

    Машина
    1. VDS,VSP,Личный сервер(домашний).
    2. CPU.
    3. RAM.
    4. OS (Linux,debian,CentOS,WinServer).
    Сервер
    1. Ядро,версия(Craftbukkit, spigot, libigot, Bukkit and etc.)(1.5.2, 1.6.2 and etc.).
    2. Строка запуска сервера( .sh , .bin , .bat).
    3. Сколько понадобилось серверу, что бы взорвался весь динамит?
    4. Если есть возможность снимать на видео как сервер будет реагировать на такой поток взрыва динамита - буду только рад.
     
    CyberMan, Bafolol, Васько и ещё 1-му нравится это.
  2. Автор темы
    Nightfear

    Nightfear Старожил Пользователь

    Баллы:
    103
    Имя в Minecraft:
    nightfear
    Тестирование ботами.
    Машина
    1. Личный сервер(домашний). Поднята виртуалка через VMware
    2. AMD Phenom II X6 1045T (2,7 ГГц). Разогнан до 3,2
    3. RAM 16ГБ.
    4. OS Windows server 2008.
    Сервер
    1. Spigot 1.5.2 RB.
    2. Строка запуска сервера
    3. 278 ботов - стабильная работа.
    4. 460 ботов - максимальное кол-во.
    5. Добавлено 2 видео.
    300 ботов

    500 ботов


    Тестирование динамитом.
    1. Spigot 1.6.2 DevBuild.
    2. -Xms1G -Xmx5G -server -d64 -Dfile.encoding=UTF-8 -XX:permSize=128m -XX:MaxPermSize=1024m -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+UseNUMA -XX:+CMSParallelRemarkEnabled -XX:+UseAdaptiveGCBoundary -XX:-UseGCOverheadLimit -XX:+UseBiasedLocking -XX:SurvivorRatio=8 -XX:TargetSurvivorRatio=90 -XX:MaxTenuringThreshold=15 -XX:UseSSE=3 -XX:+UseFastAccessorMethods -XX:+UseStringCache -XX:+UseCompressedOops -XX:+OptimizeStringConcat -XX:+AggressiveOpts -jar craftbukkit.jar.
    3. На взрыв 6056 блоков динамита понадобилось 31.41 секунды.
    4. Видео добавлено. Оно тому и подтверждение.

     
  3. Dereku

    Dereku Старожил Пользователь

    Баллы:
    173
    Skype:
    derek_unavailable
    Имя в Minecraft:
    _Dereku
    Machine:
    1. Desktop
    2. AMD Phenom II X4 B55 (3.3 GHz) @3.31 GHz
    3. 4 GB x2
    4. Win 8 ('Bad Sectors' Edition)
    Server:
    1. CraftBukkit 1.5.2 R-1.0 (Plugins (1): EssentialsLite)
    2. java -Xmx8G -jar craftbukkit.jar
    3. Bot Attack: 160 Players, ~13 TPS
    4. 6056 TNT = 56.32 Sec. (В учет шли ещё "пустые взрывы")
    @Nightfear, готово :D
     
  4. Автор темы
    Nightfear

    Nightfear Старожил Пользователь

    Баллы:
    103
    Имя в Minecraft:
    nightfear
    Можно я тебя еще поднапрягу чутка. Я вывесил свои результаты. Можешь сделать свои : по шаблону. Я хочу что бы в Теме было всё культурно и понятно. По-удаляй ранее сообщения.

    Вот так:
     
  5. Богдан Малышев

    Богдан Малышев Старожил Пользователь

    Баллы:
    103
    Машина
    1. *Секрет*
    2. *Секрет*
    3. RAM 2GB
    4. CentOS
    Сервер
    1. Bukkit
    2. *Секрет*
    Ботов впадлу настраивать, чуть позже допишу.
    Видео тоже кину.

    Динамит - 6056 блоков (Сфера 10) - 26.149 секунд.
    Сервер не совсем чистый, стоит около 15 плагинов.

    Надеюсь довести это время до 15 секунд.
    Скину результаты.
     
  6. Simon's

    Simon's Старожил Пользователь

    Баллы:
    123
    Skype:
    azegor199
    Имя в Minecraft:
    Simon
    Я провел не большой тест. Мне лень заполнять все формы:)
    И так. 15000 ТНТ - за 22 сек+ около 30 плагинов, норм?
     
    DarkuS_Fever666 нравится это.
  7. Автор темы
    Nightfear

    Nightfear Старожил Пользователь

    Баллы:
    103
    Имя в Minecraft:
    nightfear
    Тогда твой результат не является конкурентным. Мы делаем статистику не по настройки сервера а по его работе. Мы сравниваем ядра, машины, сервера... По этому - то , что у тебя на сервере стоят плагины - говорит о том, что действительный результат без плагинов у тебя может быть и 50+ сек и 100.

    А по-поводу секретов :
    Секретничать глупо. Я не прошу никакой информации, какая могла бы выдать твой проект, или то, чего ты так бережешь. Всё что ты мог использовать в любом случаи есть в сети в той или иной конструкции.
    Я сомневаюсь что ты дошел до такой вот штуки и на основании прочитаной фичи нашел выход и варианты для создания своего личного стартера. Скорее всего это чей-то модифицированный стартап, в который ты влил свою конфигу(хотя может быть всё что угодно, не хочу говорить точно).

    Это можно сочесть за *наезд* , но прости. Я тут создаю тему для всех. Пытаюсь сделать статистику лучшего решения и если каждый будет относится так - то ничего толкового не выйдет.
    Вы вообще тему читаете???
    Я вам через плагины и моды время взрыва динамита могу свести до 5 сек. НЕ В ЭТОМ СУТЬ!

    Суть в тесте! И на основании множества различных тестов сделать вывод. Для этого и нужны *Заполненые формы*, что бы потом ВЫ могли держать нормальные сервера и не ныть, что они у вас тормозят или что-то подобное.
    Так что, если хочешь помочь общему делу - на 5 минут создай новую папочку и не ставь плагины. Вот и всё. Заполнение готовой формы - еще 5 минут.
    Благодарность от меня - не вычислимая;)
     
    CyberMan нравится это.
  8. Богдан Малышев

    Богдан Малышев Старожил Пользователь

    Баллы:
    103
    Извини, я не разглашу не конфигов машины, ничего другого - проект коммерческий.
    И любой достойный результат тут - будет так же скрыт, ибо комерсы не мамы терезы.
    Мое ядро это дефолтный Bukkit оптимизированный уникально... своими руками...
    Плагины - не касаются динамита и даже NoLagg у меня не стоит, стоит то что грузит...
    WG... LWC...
    Чистяк как ястреб полетел бы (по крайней мере на моем ядре)

    Я знаю что мой пост смысла кроме "у меня 999секунд, я крут" не несет - я только хотел апнуть тебе тему.
    Так как она мне интересна.

    Возможно, сегодня вечером приду с работы и создам новую папочку ;)
    Интересно ядрышко прогнать...
    Суть в руках, а не в железе и сборке.
    До этой штуки я в 15лет дошел... :\
    Мне 21 год, я разбираюсь что делаю, а ты собираешь на меня какую то грязь про то что я чужие старты ворую.
    Кончай это дерьмо.
     
    Оригинало_о нравится это.
  9. alden

    alden Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    Frozone
    Возможно оффтоп, но кто-нибудь может мне обьяснить строку запуска?

    У меня у самого всего там одна маленькая строка..
     
    CryBot нравится это.
  10. Богдан Малышев

    Богдан Малышев Старожил Пользователь

    Баллы:
    103
    Она растет пропорционально бороде, не переживай.
    А еще существуют секретные опции ускоряющие все в разы. Oracle их скрывает.
    Только нотч и я знаем :D

    По поводу твоей строки:

    Куча дерьма :(
    Половина строк -дефолтны сами по себе.
    Плюс еще куча ошибок...
    -XX:+UseConcMarkSweepGC и -XX:+UseAdaptiveGCBoundary вместе не работают.
    AdaptiveGCBoundary ваще только в Parallel GC юзается :eek:

    Хотя о чем я... Хочешь серв? Плати!)
    Я учитывал время с зажигания до "отлагивания"
    Пустые взрывы могут быть еще некоторое время но они нам уже не показатель.
    (Это остаточная анимация, вызванная сигналами сервера которые клиент не успел обработать в пиковой нагрузке... она ест чуть менее чем ничего и была обработанна сервом 100 лет назад до того как ты ее увидел)
     
  11. Автор темы
    Nightfear

    Nightfear Старожил Пользователь

    Баллы:
    103
    Имя в Minecraft:
    nightfear
    Понял тебя. Догатки оказались ложными, спасибо за откровение. Я не стремлюсь иметь хороший сервер - я стремлюсь иметь хорошую машину. Я железячник.
     
    CyberMan, никио и Богдан Малышев нравится это.
  12. Богдан Малышев

    Богдан Малышев Старожил Пользователь

    Баллы:
    103
    Проще простого !
    1. 8gb+ DDR 3 строго с частотой 2800+ mhz (не меньше) ествественно, одинаковых и в слай и операционка 64...
    2. SSD не больше 100-200GB - Опять же, важна частота (скорость) а не размер, там только чанки лежат и все... а они по ху*не весят.
    3. Материнка с поддержкой всевозможных плюх мультиканальности пямять-проц (Не особо в этом шарю)
    4. ПРОЦ
    Проц это отдельная песня.
    Есть понятия: Физическое ядро, виртуальное ядро.
    И с ними все понятно.
    Нам нужны показатели 4.8+ на ядро, каким бы оно нибыло.
    Но все это х*ня по сравнению с КЕШАМИ проца - они нужны самые-самые.

    Теперь о ядрах.
    Моды (благо) могут выгружатся в свой скромненький ядройд.
    Можно 1 ядро, максимум 2 ядра... Остальное ху*та.
    Лучше конечно 2 ядра по 1 вирту, то есть 2:2...

    А так топовые сборки этих процов:
    Intel Core 2 Duo Wolfdale (Именно он, у них Quad Pumping)
    Intel Xeon MP Dunnington
     
    ВремяПриключений и RVXman нравится это.
  13. Автор темы
    Nightfear

    Nightfear Старожил Пользователь

    Баллы:
    103
    Имя в Minecraft:
    nightfear
    да, я читал про важность Кеша 1-го уровня. Т.к. доступ к нему самый быстрый. достаточно будет 4 мб - и проц будет золотой.
     
  14. Богдан Малышев

    Богдан Малышев Старожил Пользователь

    Баллы:
    103
    Кеша первого уровня не может быть более 128кб :)
    Да и важность их сразу отпадает поэтому, в такой то нагрузке...
    Обращай внимание на L2-L3
    24 метра L3 - Это топ.
    Intel Xeon MP Beckton
    В нем и L2 ништяк...
     
    Nightfear нравится это.
  15. Автор темы
    Nightfear

    Nightfear Старожил Пользователь

    Баллы:
    103
    Имя в Minecraft:
    nightfear
    Я жаждю получить такой бюджетный проц. И 2-х сокетную мать.
    я говорю о том, что было бы идиально.
     
    slavik123123123 и Богдан Малышев нравится это.
  16. Богдан Малышев

    Богдан Малышев Старожил Пользователь

    Баллы:
    103
    Какая мать ему подойдет на твой взгляд?
    Кеши у него полное говно на деле.
    Объем кэша L1 64 Кб
    Объем кэша L2 1024 Кб
    Объем кэша L3 8192 Кб

    Мечтать так с песней?
    Объем кэша L1 48 Кб
    Объем кэша L2 16384 Кб
    Объем кэша L3 16384 Кб
    Таких 2.
     
    Nightfear нравится это.
  17. Автор темы
    Nightfear

    Nightfear Старожил Пользователь

    Баллы:
    103
    Имя в Minecraft:
    nightfear
    Так то оно - так. Мечтать можно о Е5, а еще до 2015 года подождать, интел выпустит проц с литографией 5нм и всё. А еще я поднял темку, почитай - по идее наше будущее.

    Под проц(1155) - Материнка.
    Мда... Жирновато будет 2 цпу. 32 ядра, что с ними делать?)
     
    Богдан Малышев нравится это.
  18. Богдан Малышев

    Богдан Малышев Старожил Пользователь

    Баллы:
    103
    Точно не в Майнкрафт играть... засмеют. :D
     
  19. Dvladislav

    Dvladislav Старожил Переводчик Пользователь

    Баллы:
    173
    Эхх. 4096 ядерных тнт.
     
    Nightfear нравится это.
  20. Автор темы
    Nightfear

    Nightfear Старожил Пользователь

    Баллы:
    103
    Имя в Minecraft:
    nightfear
    эм?
     
    Оригинало_о нравится это.

Поделиться этой страницей