Как эффективно рассчитывать тики на сервере с node.js?
Допустим, сервер должен рассчитывать 60 тиков в секунду, то есть на расчет каждого должно уходить до 16.6 ms.
Срабатывает сборщик мусора и блокирует расчет примерно на 40 ms (Соответственно при росте количества расчетов, очищать ему нужно будет больше, и блокировать он будет дольше).
То есть в заданной время по расчету тика мы не укладываемся и происходит микролаг.
Удалось сгладить проблему, подключив к node.js модуль на rust, который перетягивает на себя львиную часть синхронных расчетов, тем самым бустит по скорости весь процесс
Сам опытом в разработке игровых серверов не владею, прошу поделится опытом решения проблемы или какими-нибудь полезными материалами, если такие имеются.
Почему node.js - очень быстро пилить сетевое взаимодействие с клиентом в браузере
а если я не верно понял вопрос и ты хочешь сделать так что бы твой код за место 40 мс, вписался в 16.6 + учитывая остальной код который должен работать в этот тик, то можно высчитывать время и чистить частями, а если нужно почистить за тик и вписаться в тик, то никак - потому что либо там жесткая синхронщина которая бегает и фильтрует по массивам с 10-20к записями, либо код написан плохо