Оптимизация Java сервера Lineage 2 для онлайна 1000+
Оптимизация Java Lineage 2 сервера для онлайна в 1000 человек. Статья актуальная для Windows 2003! 1.Системные требования/ОС Чаще всего под сервер используется железо типа Core2Duo с 2-4 гигами оперативной памяти. Для онлайна в 1000 человек этого мало. Я рекомендую брать серверные решения , например у меня стоит: Код:
Процессор: Quad Core Xeon 3220 - 2.40GHz (Kentsfield) - 2 x 4MB cache Для онлайна в 1к человек, нужно ставить SAS или SCSI диски со скоростью вращения шпинделя 15к. У меня на данный момент стоят два таких жёстких диска. На первом у меня Windows и программы. На втором база данных сервера. Всегда держите базу данных на отдельном диске! Оптимальный объем оперативы 6 гигабайт. Для сервера нужен хороший интернет, 100мегабитного канала хватит. Я рекомендую использовать Windows Server 2003 64 bit. В 64битной версии MYSQL и JAVA работают быстрее и можно больше выделить памяти серверу и базе. Но об этом позже. 2.Windows Server 2003 x64 Ну чтож, считаем что у нас есть хорошая серверная машина с Windows 2003. Windows изначально выделяет больше оперативы внутренним службам, работающим в фоновом режиме. И это надо менять: Код:
1.Нажмите правой кнопкой мыши на мой компьютер и выберите Свойства Код:
1.Нажмите правой кнопкой мыши на мой компьютер и выберите Свойства (появится новое окно) На этом настройка на данном этапе закончена. 3.MySql Внимание настройки конфигурация производятся в файле конфигурации mysql: my.ini Жизненно необходима настройка мускула, иначе лаги начнутся уже при онлайне в 300 человек. Хотя я и не спец по мускулу, но пару советов дам. Я буду показывать части из моих конфигурационных файлов mysql, для наглядности. Несмотря на то, что mysql требует много оперативной памяти, ее нужно выделять с умом! Иначе вы получите переполенный буфер и как следствие лаги! Вам нужно всегда знать, сколько весит ваша база данных, и регулярно менять размер потребления ею оперативны. Пример: Моя база данных весит 200 МБ, потому устанавливаю размер оперативной памяти на 512МБ. Отключите ваш Мускул перед любыми настройками. Текст типа --------> чтото умное <-------- мои комментарии. Для начала проверим предустановки: Находим в файле my.ini строчку: default-storage-engine=INNODB Если данной строчки нету, значит ищем : default-storage-engine= Пояснение: default-storage-engine- Указывает какой движок использован для создания таблиц mysql . INNODB-стандартная,версия движка для создания таблиц mysql --------> Максимальное количество коннектов к mysql. Код:
# Максимальное количество конкурирующих сессий сервер MYSQL будет -------->Это нужно установить на значение 0,так как это не используется в l2j серверах и только замедляет работу сервера. Код:
# Данная опция подаёт запрос на кеширование сервера в оперативную память и количество памяти для к Код:
table_cache=256 Код:
innodb_additional_mem_pool_size=8M ------>Но знаю точно что выставив 0 будут проблемы с I/O spikes ------>Потому юзаю "2" Код:
# If set to 1, MyISAM will flush (fsync) the transaction logs to the Код:
The size of the buffer InnoDB uses for buffering log data. As soon as Код:
# InnoDB, unlike InnoDB, uses a buffer pool to cache both indexes and ----------> Помни, если менять этот конфиг, то нужно выключить мускул и удалить логи. ----------> Логи находятся : MySQL Server 5.0\data ----------> удалите ib_logile0 and ib_logfile1 Код:
# Size of each log file in a log group. You should set the combined size --------->Будьте очень осторожны меняя тут значения. Двигайтесь потихоньку. Если процессор как у меня, то смело выставляйте «60» Код:
# Number of threads allowed inside the InnoDB kernel. The optimal value Код:
memlock -----> Помните если вы что либо изменили в конфигурации mysql,то вам нужно заново импортировать все таблицы/файлы в mysql. -----> Создайте базу с таким название и оставьте её пустой. Код:
Название: Поехали дальше. |
Ответ: Оптимизация Java сервера Lineage 2 для онлайна 1000+
4.L2j Threadpool config Настройка в конфигурации сервера. Итак мы на финишной прямой, для начала нужно оптимизировать настройки threadpool . В данном конфиге определяются сколько потоков может быть создано. Эти параметры всегда были загадкой для меня. Менять данные параметры можно при условии, что у вас мощной процессор, иначе даже не пытайтесь. Откройте ваш options.properties файл и найдите: Код:
# ================================================= = =============== Начните со стандартных значений и посмотрите как это работает. И потом начинайте медленно изменять характеристики ,для начала выставите в 2хкратном размере. Т.е. умножьте стандартные настройки данной конфигурации на 2,и сохраните файл. 5.Прочие конфиги Кое что влияющее на загрузку проца и памяти.--------> ЛОГИ Код:
# ================================================= = =============== Код:
MaxDriftRange = 0 Код:
PreciseDropCalculation = False 6.Стартовые файлы. Теперь поговорим о выделении памяти под ява процессы. Есть не сколько фактов которые вы должны знать: 1. Если у вас 32х битная ява, не выставляйте значения для xmx and xms больше 1536 мегабайт. 2. Параметр –server можно выставлять при условии, что у вас двухядерный процессор и оперативы больше 2 гигабайт. Код:
-Xmx4096m-Xms2048m-Xmn1024m-XX:PermSize=256m На моём сервере всё работает прекрасно, поэтому я не менял данный конфиг. Код:
startgameserver.bat Удачной вам работы над серверами Lineage 2. ZeroS для http://forum.zone-game.info |
Ответ: Оптимизация Java сервера Lineage 2 для онлайна 1000+
Да, и вот еще одна прозьба, прикрепите эту тему, я думаю она будет интерестна пользователям! В дальнейшем, если что еще узнаю, дополню. :)
З.Ы. Благодарите меня :) |
Ответ: Оптимизация Java сервера Lineage 2 для онлайна 1000+
Отличная статья! Благодарю =) Тему прикрепил.
|
Ответ: Оптимизация Java сервера Lineage 2 для онлайна 1000+
По поводу вот этой строки в батнике
java -server -Xmx4096m -Xms2048m -Xmn1024m в батнике от ребелл написано что значения -Xms –Xmx должны быть равными, а –Xmn должно составлять ¼ от размера -Xms –Xmx. |
Ответ: Оптимизация Java сервера Lineage 2 для онлайна 1000+
В ребеле - да, в вот к примеру в l2jserver все именно так. Спс за статью, нашел немного интересного и для себя.
|
Ответ: Оптимизация Java сервера Lineage 2 для онлайна 1000+
Cкажите что у меня получиться если у меня оптимизация комьютера такая:
Intel Pentium 4 3.0Ghz, 160GB HDD, 1.5gb ram, GF 6600 256mb, 1mb/1mb Internet Я имею ввиду именно сколько людей он сможет выдержить? Зарание спасибо |
Ответ: Оптимизация Java сервера Lineage 2 для онлайна 1000+
Рамы больше надо и интернет, конечно пошире.. но так человек 50-80 может потянет, с натягом...
|
Ответ: Оптимизация Java сервера Lineage 2 для онлайна 1000+
1. Куда именно нада вписать memlock чтобы mysql кушал толька оперу ???
2. Если используется движок default-storage-engine=INNODB, нуждается в какой либо настройке файл my-innodb-heavy-4G.ini??? 3. Я правильно понял что для того чтобы создавалась отдельная таблица для каждого файла, что создает хорошее повышение производительности сервера достаточно создать базу innodb_file_per_table и оставить её пустой ??? 4. Какой размер кластера выбрать для mysql ??? |
Ответ: Оптимизация Java сервера Lineage 2 для онлайна 1000+
Здрасте, можно поставить сервер на мой комп ?
Проц. INTEL Core i7-920 Quad-Core - 2,66GHz, 1x 4,8GT/s QPI, 8MB L3 cache, socket 1366, BOX (Nehalem, Bloomfield) МП. ASUS P6T, X58/ICH10R, 3x PCIe x16, DDR3 2000, SATA II RAID, USB2.0, FW, GLAN, 8ch audio, ATX, Память 6GB (KIT 3x2GB) DDR3 1333MHz PC10666 CL7-7-7-20 OCZ Platinum Edition XTC - vhodné pro TripleChannel Жёсткий диск. WESTERN DIGITAL Caviar Black 1000GB, SATA II, 32MB cache, 7200скорость.9ms, WD1001FALS ОС. Windows Vista Ultimate 64bit Internet : 2MB+- Какой сервер ставить и какой макс онлайн будет? |
Текущее время: 18:15. Часовой пояс GMT +3. |
Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot