Чёрный пояс платформы 1С. Лимиты памяти rphost: когда кластер убьёт процесс сам, и чем ПРОФ отличается от КОРП
1. Лимиты памяти и реакция кластера
Объём памяти рабочих процессов (rphost) и менеджеров кластера (rmngr) высчитывает сама платформа: в Windows - по показателю PagefileUsage (коммит), в Linux - как сумма vmSwap и vmRSS. На эти цифры завязаны три параметра свойств рабочего сервера в консоли администрирования кластера.
| Параметр | Значение по умолчанию | Реакция кластера при превышении |
|---|---|---|
| Временно допустимый объём памяти процессов | 0 - авторасчёт как 80% RAM сервера.-1 отключает проверку. |
Серверу перестают назначать новые соединения. Отдельный параметр «Интервал превышения» по умолчанию равен 0 - то есть отложенный перезапуск выключен, пока администратор явно не задаст интервал (например, 300 с); после его истечения запускается мягкий последовательный перезапуск процессов, начиная с самого прожорливого. |
| Критический объём памяти процессов | 0 - авторасчёт как 95% RAM сервера.-1 отключает жёсткий лимит. |
Процессы с наибольшим потреблением аварийно завершаются ОС и перезапускаются немедленно - без ожидания какого-либо интервала, ровно столько процессов, сколько нужно, чтобы вернуться в лимит. |
| Безопасный расход памяти за один вызов (только КОРП) | 0 - авторасчёт как 5% от временно допустимого объёма памяти процессов.-1 - любой вызов сверх временного лимита считается опасным. |
Если в рамках одного серверного вызова процесс запрашивает память сверх расчётного предела, вызов немедленно прерывается исключением (событие EXCP в технологическом журнале). |
2. Автомасштабирование rphost
Кластер может сам поднимать дополнительные процессы rphost, когда упирается в лимиты нагрузки на один процесс.
| Параметр | Значение по умолчанию | Реакция кластера при превышении |
|---|---|---|
| Количество ИБ на процесс (только КОРП) | 8. 0 снимает ограничение. |
Если рабочий процесс обслуживает больше ИБ, чем указано, кластер поднимает на этом сервере дополнительный rphost. |
| Количество соединений на процесс | Зависит от версии платформы - единого «канонического» значения по умолчанию в документации не нашли, конкретную цифру для вашей сборки платформы проверяйте в консоли администрирования кластера (свойства рабочего сервера). | При превышении активных соединений кластер запускает новый rphost для распределения нагрузки. |
3. Что реально урезано в лицензии ПРОФ
Часть этих же параметров кластера в лицензии ПРОФ не настраивается вообще, плюс два отдельных платформенных лимита - по ядрам и по сеансам.
| Характеристика | Лицензия ПРОФ | Лицензия КОРП |
|---|---|---|
| Использование ядер процессора | не более 12 физических/виртуальных ядер на компьютер кластера | без ограничений |
| Максимальное число сеансов | до 500 одновременных сеансов на одну информационную базу | без ограничений |
| КОРП-функциональность на ПРОФ | доступна в тестовом режиме, только пока с ИБ одновременно работает не более 10 сеансов; с 11-го сеанса функции КОРП блокируются | доступна в полном объёме без ограничения по числу сеансов |
| «Безопасный расход памяти за один вызов» | не поддерживается - параметр игнорируется платформой, даже если задан | полностью настраивается |
| «Количество ИБ на процесс» | не настраивается - всегда действует фиксированное значение 8 |
доступно для изменения |
Лимиты по ядрам и сеансам применяются к серверу и к базе соответственно - организация с несколькими серверами кластера, на каждом из которых не больше 12 ядер, остаётся в рамках лицензии ПРОФ.
Что проверить у себя на кластере
- Если у вас случаются частые падения rphost по нехватке памяти - сначала посмотрите фактические значения «Временно допустимого» и «Критического» объёма памяти в консоли администрирования, а не только диспетчер задач ОС: платформа считает по-своему (
PagefileUsage/vmSwap+vmRSS), а не по «физической» занятой памяти. - Задан ли явно «Интервал превышения допустимого объёма памяти процессов» - по умолчанию он выключен, и мягкий предупреждающий перезапуск просто не сработает, пока вы его не включите.
- На лицензии ПРОФ не тратьте время на настройку «Безопасного расхода памяти за один вызов» и «Количества ИБ на процесс» - платформа их всё равно не применит.
Вступайте в нашу телеграмм-группу Инфостарт