Ситуация, когда режим 1С:Предприятие запускается без нареканий, а при попытке войти в Конфигуратор система намертво зависает, встречается в практике системного администрирования 1С довольно часто. Особенно остро эта проблема проявляется в связке, где серверная часть работает под управлением Linux, базой данных управляет PostgreSQL, а соединение между клиентом и сервером осуществляется через VPN-туннель. Проанализируем причины такого поведения и разберем по шагам методы восстановления работоспособности системы.
В отличие от режима Предприятие, который подгружает данные порционно по мере необходимости, Конфигуратор при запуске и открытии конфигурации выполняет массовое чтение метаданных. В этот момент происходит интенсивный обмен данными между клиентским приложением, процессом rphost на сервере 1С и СУБД PostgreSQL. Если в этой цепочке возникает задержка или потеря пакетов, процесс переходит в состояние ожидания, которое пользователь видит как "Программа не отвечает".
Если стандартная очистка кэша не помогает, а зависание происходит еще до момента авторизации или сразу после нажатия кнопки "Открыть конфигурацию", корень проблемы может крыться в состоянии системных таблиц базы данных. Одной из важнейших является таблица Config, где хранится дерево метаданных. Рассмотрим, как привести её в порядок.
При активной разработке или частых обновлениях (особенно в тяжелых конфигурациях, таких как ЗУП 3.1) в PostgreSQL накапливается большое количество "мертвых" кортежей (dead tuples). Это замедляет чтение метаданных. Выполним полную очистку и пересчет статистики для этой таблицы:
psql для нужной базы данных.
VACUUM FULL ANALYZE Config;
VACUUM FULL ANALYZE SaveConfig;
Важно: Команда VACUUM FULL блокирует таблицу на время выполнения, поэтому убедитесь, что в этот момент с базой никто не работает. Также эффективным методом является создание полного дампа базы данных через pg_dump и его последующее восстановление в новую чистую базу. Это полностью перестраивает индексы и физическую структуру файлов, что часто решает проблему "необъяснимых" зависаний.
Проанализируем ситуацию с точки зрения сети. Когда работа идет через VPN, данные упаковываются в дополнительные заголовки. Если размер пакета 1С вместе с заголовками VPN превышает максимально допустимый размер кадра в сети (MTU), происходит фрагментация. Пакеты дробятся, теряются, или отбрасываются маршрутизаторами.
Конфигуратор крайне чувствителен к целостности потока данных при передаче конфигурации. Попробуем диагностировать и исправить это:
MTU на сетевых интерфейсах сервера и клиента.MTU на VPN-интерфейсе до 1300 или 1400 байт.Это позволит избежать ситуации, когда rphost отправляет большой объем данных метаданных, который "застревает" в туннеле, заставляя клиентское приложение бесконечно ждать ответа.
Иногда проблема кроется в некорректном состоянии сеансовых данных на стороне сервера 1С. Разберем, что можно очистить на сервере Linux, не затрагивая саму базу данных. Рассмотрим основные папки в рабочем каталоге кластера (обычно это /home/usr1cv8/.1cv8/1C/1cv8/reg_1541/):
Процессы rphost на Linux могут сталкиваться с ограничениями операционной системы. Если лимит на количество открытых файлов слишком мал, Конфигуратор не сможет прочитать все необходимые компоненты конфигурации из временных хранилищ. Проанализируем настройки ulimit.
Убедитесь, что для пользователя, под которым запущен сервер 1С (обычно usr1cv8), установлены достаточные лимиты в файле /etc/security/limits.conf:
usr1cv8 soft nofile 65536
usr1cv8 hard nofile 65536
usr1cv8 soft nproc 10000
usr1cv8 hard nproc 10000
После внесения изменений потребуется перезапуск службы сервера 1С.
Помимо стандартного кэша по путям %AppData%\Local\1C и %AppData%\Roaming\1C, Конфигуратор сохраняет настройки расположения окон, дерево метаданных и другие параметры в файле 1Cv8.pfl. Если этот файл поврежден, попытка отрисовать дерево метаданных приведет к зависанию.
Попробуйте выполнить следующие действия на компьютере пользователя:
1Cv8.pfl в папке профиля пользователя 1С.В большинстве случаев, сочетание очистки таблицы Config через VACUUM FULL и настройки MTU для VPN-соединения позволяет полностью устранить проблему зависания Конфигуратора и вернуть систему в рабочее состояние.