• Страница 1 из 1
  • 1
Модератор форума: Dimitro  
Сервер съедает ОЗУ
hellscream_server
Скаут
Доброго времени суток, впервые столкнулся с такой проблемой, что сервер по мере появления игроков набирает озу, но после выхода оперативка не падает а только растёт. Пробовал ставить разные ядра начиная от офф тк, до древних исходников. Думал что проблема в ОС, ставил и Debian 8.1 и Ubuntu 16.04
ККомпилил стандартным конфигуратором
Код
cmake ../ -DCMAKE_INSTALL_PREFIX=/home/serv -DTOOLS=0 -DSCRIPTS=1


Подскажите в каком направлении копать?
Сообщение # 1 написано 19.06.2017 в 20:02
grasicco
Сержант
мир скриптом запускаешь?
Сообщение # 2 написано 19.06.2017 в 22:12
zugurysus
Центурион
Тут все нормально:D Просто у кого то мало ОЗУ. Почитайе доксиген или wiki про минимальные характеристики для сервера при работе.
А еще на счет этого есть один конфиг в конфигурационном файле world.
На счет ОЗУ - одному персонажу в онлайне сервер выделяет (точно не знаю, но допустим 50МБ оперативки, у всех по разному).

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

Цитата
Я как то раз запускал вообще с 2ГБ оператиками, ОЗУ сразу вышибалась после 10 минут работы и более 10 онлайна и сервер просто не вывозил и завершался - было дело как то на windows сервере.
Сообщение # 3 отредактировано zugurysus - Вторник, 20.06.2017, 04:12
hellscream_server
Скаут
grasicco, да
Код
#!/bin/sh
while true ; do
/home/serv/bin/worldserver -c /home/serv/etc/worldserver.conf
done


Цитата zugurysus ()
Тут все нормально:D Просто у кого то мало ОЗУ. Почитайе доксиген или wiki про минимальные характеристики для сервера при работе.А еще на счет этого есть один конфиг в конфигурационном файле world.
На счет ОЗУ - одному персонажу в онлайне сервер выделяет (точно не знаю, но допустим 50МБ оперативки, у всех по разному).

Еще на счет компиляции, в линуксе не обязательно компилировать под опр. кол. ядер и озу. Оно же сама для себя благоприятно компилит. Так что скрипт который ты сейчас скинул нормальный и обычный.
6 ядер, 6 гб озу, думаю этого должно хватать для онлайна в 50 тел точно, однако озу просто растёт но как только игрок вышел ничего не поменялось, оно не падает а продолжает расти дальше.
Како конкретно конфиг? Про скрипт знаю что дефолтный, скинул для того чтобы небыло вопросов каким скриптом собирал.

Добавлено (20.06.2017, 14:10)
---------------------------------------------
при 20 онлайна доходит что сервер ест 5 гб озу и тачка просто вырубается

Сообщение # 4 отредактировано hellscream_server - Вторник, 20.06.2017, 14:04
grasicco
Сержант
Цитата hellscream_server ()
#!/bin/sh
while true ; do
/home/serv/bin/worldserver -c /home/serv/etc/worldserver.conf
done

Этим скриптом ты по кд запускаешь мир, поэтому и озу пропадает, ребутнешь сам сервер, а не мир, все вернется. Можно родительский шелл прибивать, тогда тоже озу вернется, но мир упадет. Кароч скрипт нужен другой, либо юзать утилиты(рекомендую).
Если хочешь проверить, что виноват не сам мир, а перезапуск, запусти сервер без скрипта и  без привязки к консоли (debian)
Код
nohup /home/serv/bin/worldserver &

Затем проверь, сколько он потребляет
Сообщение # 5 отредактировано grasicco - Вторник, 20.06.2017, 22:49
zugurysus
Центурион
Сколько памяти на соединение:
Код
Network.OutUBuff

Выгрузка памяти как я понял:
Код
GridUnload


Запуск без "-с" к указу конфига ни как? По идее бинарник должен знать где конфиг находится, если ссудить на всех стоковых ядрах. Я так только запускал ебучее говно от SV.
Сообщение # 6 написано 21.06.2017 в 03:51
  • Страница 1 из 1
  • 1
Поиск: