Я использую небольшой сервер Node.js на уровне Heroku Hobby dyno. Этот уровень выделяет 512 МБ ОЗУ. Эта служба принимает данные JSON среднего размера (~ 5000 объектов JSON, каждый из которых составляет ~ 5 КБ, 5000 * 5 КБ = 25 МБ), выполняет некоторый анализ и выдает около 20 метрик. Это не тривиальный объем входных данных, но также определенно не ГБ файлов. Я запутался, когда сталкиваюсь здесь с ограничениями памяти. Я запускаю один непрерывный запрос для всех 20 показателей. Не происходит ли сборка мусора до конца запроса? Я создаю много объектов Date, вероятно, около 2 на объект JSON, всего около 10000, и я делаю это заранее и сохраняю их для всего процесса, поэтому я не постоянно воссоздаю эти даты. Может ли это быть проблемой, с которой я сталкиваюсь? Любые предложения о том, как оптимизировать там?
Кстати, я знаю, что Node.js не лучший инструмент для обработки данных в целом, и мы уже ищем переход на сервер на основе Python для библиотек и многопоточной среды. Но до тех пор, пока это не заработало, я бы хотел понять и улучшить ситуацию, с которой я сейчас сталкиваюсь на Node.js.
Спасибо!