Требования к серверу Lineage 2: сколько машины реально нужно

Определить требования к серверу Lineage 2 сводится к одному вопросу: сколько игроков вы ожидаете одновременно и насколько тяжёлый ваш мир. Приватный сервер — это два Java-процесса и база данных, и у каждого свой аппетит к CPU, RAM и диску. Эта статья — спецификация, а не гайд по хостингу. Она разбирает ядра, память, хранилище, трафик и версии ПО, которые серверу Lineage 2 обычно нужны при малом, среднем и большом населении, чтобы вы могли подобрать машину до того, как арендуете или соберёте её.
Что на самом деле создаёт нагрузку
Четыре ресурса решают, ощущается ли сервер гладким: CPU, RAM, дисковый ввод-вывод и исходящий трафик. Население задаёт масштаб, но мир с тысячами NPC, поиском пути, квестами и событиями тяжелее на игрока, чем урезанная PvP-сборка с очищенным spawnlist. Воспринимайте числа ниже как отправные точки и наблюдайте за собственными метриками, прежде чем покупать больше железа.

CPU: сначала ядра, потом частота
Современные ядра на базе L2J (L2JMobius, aCis и L2J Server) многопоточны и используют дополнительные ядра. Четыре ядра — практический минимум для живого сервера, а шесть-восемь ядер дают место для поиска пути, ИИ и обработки пакетов при среднем населении. Частота всё ещё имеет значение, потому что тяжёлые одиночные действия, такие как смена класса или крупные спавн-события, опираются на один поток.
- Пулы потоков масштабируются с ядрами. Типичная база в конфигах Mobius задаёт пул планировщика как число ядер на четыре, а мгновенный пул — как число ядер на два.
- Старый совет, что сервер L2J не нагружает CPU, родом из маленьких сборок Interlude. Как только на карте сотни игроков, мобов и умений, использование CPU растёт.
- Не покупайте больше ядер, чем можете прокормить памятью. Быстрая четырёхъядерная машина с достаточной памятью лучше медленной многоядерной, страдающей от нехватки RAM.
RAM: размер Java-хипа по числу игроков
RAM — ресурс, который владельцы недооценивают чаще всего. Игровой сервер держит мир в памяти, а сервер входа сравнительно крошечный. Поскольку стек на Java, память задаётся как потолок хипа, а не как сырое число установки. Широко используемый справочник Mobius даёт такие хипы игрового сервера: около 4 ГБ менее чем для 100 игроков, 16 ГБ для 100–500 и 32 ГБ для 500–2000. Сервер входа в любом случае остаётся в пределах пары сотен мегабайт.
Добавьте запас поверх хипа для операционной системы, базы данных и самой JVM. Хип в 32 ГБ под 500 игроков означает машину на 40 ГБ или больше, когда MySQL и ОС получат свою долю.
Одно предостережение из wiki по установке L2JMobius: не выделяйте огромный единый хип, даже если у вас есть память. Примерно после 28 ГБ большие хипы ухудшают паузы сборки мусора, а не улучшают их. За этой точкой масштабируйте, разделяя сервисы, а не раздувая потолок одного хипа.
Geodata меняет расчёт. Загрузка geodata в память добавляет примерно 2–3 ГБ, а включение pathnode сверх этого может подтянуть к 5 ГБ. Если RAM впритык, можно отключить geodata или читать её с диска — ценой точности поиска пути.

Диск: SSD, geodata и отдельный диск под базу данных
Заложите минимум 10 ГБ свободного места под исходники, результат сборки и базу данных на чистой установке. Более крупные потребители — набор данных, файлы geodata (от сотен мегабайт до пары ГБ в зависимости от хроники и конвертации) и база данных по мере накопления персонажей, предметов, кланов и логов.
Используйте SSD. Механические диски были узким местом серверов эпохи 2000-х и остаются самой медленной частью современного. Классическое правило производительности всё ещё действует: держите базу данных на отдельном диске или отдельном томе, чтобы MySQL и игровой сервер не боролись за один и тот же ввод-вывод. На VPS это означает план с отдельным диском данных или выделенный хост базы данных, когда вы вырастете.
Трафик: важен исходящий канал
Игроки подключаются входящим потоком и получают мир исходящим, поэтому ваше ограничение — исходящий канал. Измерения сообщества оценивают типичного активного игрока примерно в 20–30 КБ в секунду, и поток от сервера к клиенту гораздо тяжелее потока от клиента к серверу, потому что сервер отправляет каждое движение, умение и эффект поблизости.
Канал в 5 Мбит/с может обслужить несколько сотен игроков в обычной игре, но осады, массовый PvP и зоны событий поднимают трафик примерно в десять раз. Для цели в 500 игроков 10 Мбит/с и больше исходящего — более безопасный минимум, и вам нужен стабильный и низколатентный канал, а не пульсирующий. Домашние общие подключения редко дают и то, и другое.
Стек ПО: JDK, база данных и два процесса
Вам нужны JDK, совместимая с MySQL база данных и Apache Ant для сборки большинства сборок. Точная версия JDK зависит от эмулятора и его ревизии, поэтому всегда сверяйтесь с readme, который идёт с вашей сборкой.
- L2JMobius: свежие релизы нацелены на современный JDK, и текущая линия использует JDK 25. Более ранние папки хроник могут указывать JDK 17. Java 8 больше не поддерживается.
- aCis: зависит от ревизии. Сборки ниже ревизии 381 используют JDK 8, ревизии 381–406 — JDK 11, а более поздние — JDK 21.
- L2J Server: текущие сборки работают на Java 11 или новее, причём Java 21 — безопасный выбор.
Используйте поддерживаемый LTS-дистрибутив вроде сборки Eclipse Temurin, а не случайный JDK с файлообменника.
Для базы данных подойдут MySQL 5.7 или новее либо свежий релиз MariaDB. Многие владельцы aCis используют MariaDB 10.9 или позже. Задайте буферный пул InnoDB разумной долей RAM (до примерно половины на общей машине, больше на выделенном хосте базы данных) и держите схему на быстром хранилище.
И наконец, запускайте сервер входа, игровой сервер и базу данных как отдельные процессы даже на одной машине. Именно эта изоляция позволяет перезапустить один, не убивая остальные, и по той же причине крупные серверы в итоге переносят базу данных на отдельный хост.
Справочные характеристики по размеру сервера
Таблица ниже — отправная точка, а не жёсткое правило. Округляйте вверх, когда ваш мир тяжело заскриптован или население скачет.
| Цель | CPU | RAM (хип игры) | Диск | Исходящий канал |
|---|---|---|---|---|
| Малый, до 50 игроков | 2–4 ядра | хип 4 ГБ, машина 8 ГБ | 20 ГБ SSD | 2–5 Мбит/с |
| Средний, 100–300 игроков | 4–6 ядер | хип 16 ГБ, машина 32 ГБ | 60–100 ГБ SSD | 10 Мбит/с |
| Большой, 500+ игроков | 8+ ядер | хип 32 ГБ, машина 48–64 ГБ | отдельный диск под БД, 200+ ГБ SSD | 25+ Мбит/с |
Эти числа предполагают разумно оптимизированную сборку. Сборка с тяжёлыми кастомными скриптами, плотными спавнами или базой данных на том же медленном диске потребует больше всего.
Где владельцы переплачивают и недоплачивают
Две распространённые ошибки противоположны. Одни владельцы покупают огромный CPU и затем запускают хип в 4 ГБ, так что мир дёргается, пока процессор простаивает. Другие пытаются запустить 300 игроков на VPS с 2 ядрами и 4 ГБ, а потом винят сборку, когда поиск пути и очереди входа захлёбываются.
Сначала сопоставьте RAM с населением, затем дайте CPU достаточно запаса, потом убедитесь, что база данных не борется с игровым сервером за диск. Трафик — та часть, которую большинство домашних сетапов делают неправильно, потому что исходящий канал медленный и общий. Если вы не можете контролировать качество канала, никакое количество CPU не исправит лаги на осаде.
Когда ваша машина держит целевое население, следующий шаг — привести на неё игроков. Добавьте мир через форму бесплатной подачи сервера или возьмите VIP-размещение, если хотите больше видимости с первого дня. Также можно сравнить, как другие владельцы описывают свои рейты и настройку, в каталоге серверов.
