Сообщений: 123
Тем: 2
Зарегистрирован: Sep 2008
Репутация:
1,861
07-10-2010, 03:48 AM
(Сообщение последний раз редактировалось: 07-10-2010, 12:42 PM Blakkky.)
Мдем. Интересная тема. Думаю тут проще назвать, что не влияет на стабильность работы сервера.
Куда есть смысл копать для оптимизации ядра:
- сетевая часть (mmocore, точнее его "странное" использование, в частности т.н. классы-пакеты),
- все коллекции (скилов, итемов, игроков, мобов, квестов и т.д. чаще всего медленные и не рассчитанные на несколько сотен тысяч элементов в них),
- все, что работает с нитками (особенно то, что их создает самостоятельно, в обход общего менеджера ниток),
- абсолютно не оптимизированная работа с базой (сами по себе запросы, мягко говоря, не оптимизированы, да еще и вызываются когда надо и когда не надо),
- ну и сам по себе код в большинстве мест писан вообще без малейшего намека на оптимизацию (например, долгое время в EnterWorld было подряд 4 цикла по всем игрокам, кто в онлайне, чтоб оповестить их о том, что вошел друг/соклан/соалиец, хотя вполне вместо 4х проходов по 1000++ элементам можно было бы обойтись одним (а если немного подумать над структурой сервера и связями сущностей, то и вообще без этих проходов обойтись).