Оптимизация l2j сервера для онлайна 600 +
Данное руководство - это письменная инструкция для оптимизации Windows Server 2003 x64 и MySQL под работу Lineage 2 серверов с онлайном 500-600.
Всем известно, что ОС Windows всегда занимает большую часть оперативной памяти внутренними службами, которые работают в фоновом режиме.
Такое распределение нас не удовлетворяет.
Поэтому:
Код:
Нажмите кнопку Пуск, выберите пункт Выполнить, введите в поле Открыть команду sysdm.cpl и нажмите кнопку ВВОД, чтобы открыть диалоговое окно Свойства системы.
Перейдите на вкладку Дополнительно и в разделе Быстродействие нажмите кнопку Параметры.
Перейдите на вкладку Дополнительно и разделе Распределение времени процессора поставьте галочку "программ".
Таким образом, мы добьемся правильного распределения оперативной памяти.
Теперь нам нужно выделить больше виртуальной памяти системы.
Мы делаем это таким образом:
Код:
Нажмите кнопку Пуск, выберите пункт Выполнить, введите в поле Открыть команду sysdm.cpl и нажмите кнопку ВВОД, чтобы открыть диалоговое окно Свойства системы.
Перейдите на вкладку Дополнительно и в разделе Быстродействие нажмите кнопку Параметры.
Щелкните на вкладке Дополнительно
В нижней части раздела "Виртуальная память" нажмите кнопку Изменить.
Появится новое окно, выберите ваш жесткий диск, где стоит ваш .Чуть ниже выберите "Размер файла подкачки для выбранного диска выберите Особый размер".
Там будет два окна для ввода:
Исходный размер (МБ):
Максимальный размер (МБ):
В этих областях, вы вводите общий объем памяти, разделяя на 1,5, то есть на данный момент у меня 8,5 Гб оперативной памяти, я делю 8500 на 1,4, получаем приближенное значение: 6100 Гб
Это приближенное значение вводится в обоих окошках. Убедитесь, что вы поделили правильно и написали в оба окна одинаковые значения. Затем нажмите кнопку Ok.
Закройте все окна и перезагрузите компьютер.
Если у вас есть дополнительный пустой жесткий диск, я советую вам использовать его под файл подкачки.
Теперь перейдем в настройки MySQL.
Нужно установить максимальное количество сессий MYSQL. Одно из этих соединений будет зарезервировано для клиента с самыми высокими привилегиями, то есть для администратора.
max_connections = 2000 - затем установить около 2000, это будет оптимальное значение для сервера.
Если у вас большие таблицы, нужно поставить больше table_cache.
Далее
innodb_additional_mem_pool_size - эта дополнительная память выделяется для таблиц, если они больше указанного значения table_cache, то память берется отсюда. 8M достаточно.
Код:
innodb_additional_mem_pool_size = 8M
Так же нету смысла ставить innodb_log_buffer_size больше 16M
Код:
he size of the buffer InnoDB uses for buffering log data . As soon AS
# It is full, InnoDB will have to flush it to disk. As it is flushed
# Once per second anyway, it does not make sense to have it very large
# (Even with long transactions).
innodb_log_buffer_size = 16M
Если на сервере много свободной оперативной памяти, то можно увеличить значение, которое увеличило бы память для базы.
Код:
# InnoDB, unlike MyISAM, uses a buffer pool to cache both indexes and
# Row data. The bigger you set this the less disk I / O is needed to
# Access data in tables. On a dedicated database server you may set this
# Parameter up to 80% of the machine physical memory size. Do not set it
# Too large, though, because competition of the physical memory may
# Cause paging in the operating system. Note that on 32bit systems you
# Might be limited to 2-3.5G of user level memory per process, so do not
# Set it too high.
innodb_buffer_pool_size = 1024M
innodb_log_file_size обычно ставят в 2 раза меньше innodb_buffer_pool_size.
Помните, чтобы изменить эту конфигурацию, вы должны:
Выключить мускул и удалить логи.
Журналы: MySQL Server 5.0 \ данных
удалить ib_logile0 и ib_logfile1
Код:
# Size of each log file in a log group. You should set the combined size
# Of log files to about 25% -100% of your buffer pool size to avoid
# Unneeded buffer pool flush activity on log file overwrite. However,
# Note that a larger logfile size will increase the time needed for the
# Recovery process.
innodb_log_file_size = 512M
Настройки в сборке (напимер в скории)
gameserver_loop.sh