Многие пользователи и администраторы 1С:Предприятия сталкиваются с ситуацией, когда системные фоновые задания начинают непредсказуемо запускаться, создавая значительную нагрузку на сервер и делая работу в системе практически невозможной. Эта проблема проявляется одновременным запуском заданий в нескольких базах кластера, длится от 3 до 5 минут и может возникнуть в любое время, что указывает на отсутствие привязки к явно настроенным регламентным операциям.
Давайте вместе разберем, что представляют собой эти задания, какие проблемы они вызывают, и как мы можем с ними бороться.
Системные фоновые задания в 1С:Предприятии — это внутренние операции, которые платформа выполняет автоматически в фоновом режиме, незаметно для пользователя. Их основное предназначение — асинхронное выполнение различных прикладных задач. Это могут быть обновления конфигурации базы данных, загрузка курсов валют, обновление классификаторов, отложенное проведение документов, извлечение текста, обновление ответов ЕГАИС, обновление индексов полнотекстового поиска и многие другие операции. Фактическое выполнение регламентного задания, настроенного администратором, осуществляется через фоновое задание. Планировщик заданий регулярно проверяет расписание регламентных заданий и при совпадении условий создает и запускает соответствующее фоновое задание.
В контексте обсуждаемой проблемы, "Системное фоновое задание" часто связано с фоновым обновлением конфигурации базы данных (реструктуризацией). Это может происходить, даже если мы не производили явное обновление конфигурации и не применяем автоматическую установку патчей. Причина такого поведения может крыться во внутренних механизмах платформы, например, при перезапуске рабочих процессов rphost и переносе настроек на новый процесс. Чтобы исключить ошибки в самой структуре метаданных, полезно проводить регулярный анализ конфигураций и расширений на наличие ошибок.
Столкнувшись с этой проблемой, мы можем наблюдать следующие симптомы, которые значительно затрудняют или полностью блокируют работу в 1С:
Время появления таких заданий абсолютно рандомно – это может быть и 10:15, и 12:55, что еще больше усложняет диагностику и поиск причины.
В ходе анализа проблемы и обсуждений на форумах мы выделили несколько ключевых причин, которые могут приводить к нежелательному поведению системных фоновых заданий:
Проблемы с платформой 1С:Предприятие:
Перезапуск рабочих процессов rphost:
rphost (рабочий процесс кластера 1С) перезапускается, и настройки переносятся на новый процесс. Это может инициировать определенные внутренние служебные операции, которые платформа интерпретирует как "системные фоновые задания" для фонового обновления или реструктуризации.Внутренние механизмы платформы, связанные с обновлением конфигурации:
Для решения этой комплексной проблемы мы рассмотрим несколько подходов. Нам потребуется системный подход, включающий анализ версий платформы, настройку кластера, управление заданиями и, при необходимости, ручные вмешательства.
Учитывая, что многие пользователи связывают проблему с определенными версиями платформы, особенно из серии 8.3.27, нам критически важно уделить внимание версии, на которой мы работаем.
Один из пользователей отметил, что после перехода на платформу 8.3.27.1859 проблема "вроде как престало беспокоить". Это дает нам надежду, но не является гарантией для всех.
Мы можем использовать встроенные механизмы 1С для контроля над фоновыми заданиями или воспользоваться более удобными инструментами, такими как кроссплатформенная консоль администрирования кластера серверов 1С.
Блокировка регламентных заданий:
Одним из эффективных временных решений, упомянутых на форуме, является включение блокировки регламентных заданий. Это может помочь при выполнении обновлений или других операций, требующих монопольного доступа к базе данных.
/AllowExecuteScheduledJobs –off в строке запуска 1С:Предприятия.Важно: После выполнения работ, ради которых была включена блокировка, необходимо снять этот флажок (или убрать параметр запуска), иначе регламентные задания не будут выполняться вовсе, что может нарушить штатную работу системы. Чтобы всегда быть в курсе состояния ваших задач, можно настроить анализ журнала регистрации на наличие ошибок выполнения регламентных заданий.
Анализ и отключение ненужных или оптимизация расписания заданий:
Многие фоновые задания в 1С:Предприятии (например, загрузка курсов валют, обновление классификаторов) могут быть неактуальны или некритичны для нашего бизнеса — решается через инструментарий для управления регламентными и фоновыми заданиями. Их отключение или корректировка расписания выполнения позволяет значительно снизить нагрузку и повысить производительность системы.
rphostКак мы выяснили, перезапуск rphost может быть связан с возникновением проблемы. Мы можем влиять на поведение рабочих процессов для стабилизации системы.
Причины перезапуска rphost:
Рабочие процессы rphost могут перезапускаться по разным причинам, включая превышение лимитов потребления оперативной памяти или по расписанию. Чтобы сделать этот процесс автоматическим и контролируемым, можно применить службу для автоматического перезапуска рабочих процессов кластера 1С по заданным настройкам.
Настройка кластера 1С:
В консоли администрирования серверов 1С мы можем настроить параметры рабочих процессов, чтобы сделать их поведение более предсказуемым и управляемым:
rphost, а слишком высокий может привести к переполнению памяти сервера.rphost периодически перезапускался для освобождения ресурсов, мы можем задать это расписание на нерабочее время.Эти настройки помогут стабилизировать систему и уменьшить количество неожиданных перезапусков, которые могут вызывать проблемные фоновые задания.
В случае, когда системные фоновые задания уже "зависли" и мешают работе, нам могут помочь ручные методы управления. Для этих целей отлично подойдет WEB приложение для управления сеансами и завершения процессов rphost.
Отмена или удаление заданий через консоль:
Зависшие фоновые задания можно попытаться отменить или удалить через консоль регламентных и фоновых заданий (раздел "Администрирование" - "Обслуживание" - "Регламентные и фоновые задания"). Для этого найдем проблемное задание и попробуем изменить его статус или удалить.
Перезапуск сервера 1С или службы агента:
Часто самым простым, но при этом самым радикальным и не всегда допустимым решением для зависших заданий является перезапуск сервера 1С:Предприятия или только службы агента сервера 1С. Это приведет к принудительному завершению всех активных фоновых заданий, но также прервет работу всех пользователей.
"Деликатное" удаление проблемного rphost по PID:
В некоторых случаях мы можем более "деликатно" завершить проблемный рабочий процесс, не затрагивая всех пользователей. В этом случае удобно использовать специализированный web-интерфейс для удаления сеансов и завершения rphost:
rphost.exe, в котором "висит" системное фоновое задание. Это можно сделать через консоль администрирования серверов 1С, сопоставив зависшее задание с конкретным рабочим процессом.rphost.exe по его уникальному идентификатору (PID) через диспетчер задач операционной системы или панель управления сторонним инструментом.Для предотвращения подобных ситуаций и улучшения общей производительности системы мы можем предпринять следующие шаги:
Перенос на отдельный сервер для фоновых заданий:
При очень высокой нагрузке от фоновых заданий (если они постоянно потребляют более 20% ресурсов ЦП), рассмотрим возможность переноса их выполнения на отдельный рабочий сервер 1С. Для этого настроим требования назначения функциональности для серверов кластера, указав, что фоновые задания должны выполняться на выделенном сервере.
Проверка прав пользователя:
Убедимся, что пользователь, от имени которого выполняются регламентные задания (обычно это служебный пользователь или администратор), имеет корректные и достаточные права для выполнения всех операций, требуемых заданиями. Проверить корректность вызовов в коде поможет анализ состава расширений и общих модулей на ошибки.
Единое время на всех серверах:
Критически важно, чтобы на всех компьютерах и серверах, участвующих в работе кластера 1С, было одинаковое и синхронизированное время. Расхождения во времени могут приводить к некорректной работе планировщика заданий и другим непредвиденным проблемам.
Анализ технологического журнала:
Для глубокого анализа причин проблем, связанных с фоновыми заданиями, необходимо настроить и изучать технологический журнал (ТЖ) 1С. Также полезно внедрить комплекс мониторинга Yellow Watcher, который поможет собрать статистику по управляемым блокировкам и длительным запросам.
UpdateConfigurationLicenseИногда мы можем столкнуться с конкретным системным фоновым заданием под названием UpdateConfigurationLicense. Это задание может запускаться платформой после обновления конфигурации базы данных и выполнять манипуляции для обновления лицензии или ее контроля. Его особенность в том, что оно может блокировать доступ к базе данных, даже если запуск других фоновых задач запрещен. Этот механизм находится на уровне платформы и требует особого внимания, поскольку его поведение сложно контролировать стандартными средствами.
В целом, проблема с непредсказуемым запуском системных фоновых заданий в 1С:Предприятии является комплексной и может быть вызвана сочетанием различных факторов, включая ошибки платформы, некорректные настройки кластера или чрезмерное количество активных фоновых операций. Решение требует системного подхода и часто включает в себя обновление платформы, оптимизацию настроек заданий и использование инструментов вроде альтернативной консоли администрирования кластера. Применяя эти рекомендации, мы сможем добиться большей стабильности и предсказуемости в работе нашей системы 1С:Предприятие.