Участник сообщества #90
Участник сообщества #90
8 июл. 2025 г., 14:41(изменён)
0
0

Проблема с заполнением оперативной памяти в кластере WebSoftHCM

Из чата сообщества

Добрый вечер, граждане разработчики. У нас проблема. Имеем кластер WebSoftHCM состоящий из 3х web-nod и 1воркер. на веб нодах медленно в течение дня заполняется оперативная память (не утилизируется) и по итогу имеем зависшие веб ноды и недоступный портал. сталкивался ли кто то с подобной проблемой и как решали ?

Участник сообщества
Участник сообщества8 июл. 2025 г., 14:50(изменён)

Привет! Сталкивался с похожей проблемой, тогда пересмотрел все библиотеки которые есть в проекте и понял, что библиотека которая генерирует pdf-ки(маршрутные квитанции, билеты и тд) жрет память, на форуме github нашел такую инфу про билиотеку. Пришлось другую библиотеку подключать, заново писать итоговую pdf-ку. Проект был на c#, прочитал книгу управление памятью .net. Можно посмотреть в сторону утчеки памяти

Участник сообщества
Участник сообщества8 июл. 2025 г., 16:25(изменён)

как первый вариант - поищи в кастомном коде вызов функции DropFormsCache

Участник сообщества
Участник сообщества8 июл. 2025 г., 17:24(изменён)

Странно, что у вас при переполнении памяти ноды просто зависают. У нас в таких случаях ноды на IIS и сервисах перезагружаются автоматически и продолжают работу с нуля.

Если у вас используется версия например 2023.1.649, рекомендую обратить внимание на параметры: DOTNETCORE-MEMORY-THRESHOLD, DOTNETCORE-MEMORY-CONTROL, DOTNETCORE-MEMORY-LONG-COLLECTION-INTERVAL, DOTNETCORE-MEMORY-INTER-COLLECTION-INTERVAL Подробнее о них: https://news.websoft.ru/_wt/6747986263544912377

Если же версия системы более старая, тогда остаются только два пути: оптимизация кода и ежедневная перезагрузка серверов.

Как правило, оперативную память “съедает” кастомный функционал, который изначально был реализован без должной оптимизации. Со временем его начинают использовать всё больше сотрудников, и нагрузка на сервер резко возрастает — отсюда и проблемы.

Участник сообщества
Участник сообщества9 июл. 2025 г., 09:47(изменён)

привет, могу подсказать способ, не относящийся к WebSoft, но его лучше не тесте проверить сперва

https://github.com/henrypp/memreduct/releases скачиваем memreduct-3.5.2-bin.7z распаковываем как архив куда нам нужно, запускаем от имени администратора memreduct.exe из этой папки и ставим на расписание

Участник сообщества
Участник сообщества9 июл. 2025 г., 12:46(изменён)

Если это не ваш баг с каким нибудь DropFormCaches то обещали в новом релизе что то сделать с памятью

Чтобы ответить, необходимо войти в систему