Рассмотрим ситуацию, с которой сталкиваются многие команды разработчиков 1С: при одновременной работе нескольких программистов на одном сервере, автоматическое подключение отладки по протоколу TCP работает нестабильно или не срабатывает вовсе. Давайте разберемся, почему сервер 1С назначает разные порты для сеансов отладки и как обеспечить комфортную работу всей команды.
При использовании классического протокола TCP каждый сеанс отладки в 1С требует выделения уникального порта на сервере. Когда первый программист запускает отладку, сервер выделяет ему порт, например, 1560. Когда второй программист начинает отладку в той же или другой базе, сервер динамически назначает ему следующий свободный порт (например, 1564). Если клиентская часть конфигуратора не успевает корректно опросить все активные порты или механизм обнаружения дает сбой, автоматическое подключение не происходит.
Это вызывает дискомфорт, так как разработчику приходится вручную заходить в настройки подключения отладки, указывать адрес сервера и принудительно подключаться к нужному сеансу.
Самым современным и рекомендуемым способом решения проблем с «отваливающимися» портами является переход на использование HTTP-отладки. В отличие от TCP, этот метод работает через единый HTTP-порт, что исключает конфликт динамически назначаемых портов.
Важное примечание: Ранее существовала проблема, при которой HTTP-отладка могла приводить к замедлению вычисления коллекций значений (массивов, таблиц значений). Однако в актуальных версиях платформы (8.3.19 и выше) этот механизм был существенно оптимизирован и доработан, поэтому сейчас этот способ является стандартом для стабильной разработки.
Если вы столкнулись с ошибками обнаружения сеансов, проанализируйте версию вашей платформы. Фирма 1С в последних релизах (начиная с 8.3.19) внесла множество исправлений в механизм регистрации сеансов отладки в кластере серверов. Обновление платформы до стабильного релиза часто снимает необходимость «шаманства» с портами.
Если вы вынуждены оставаться на TCP-отладке, обратите внимание на следующие моменты:
ragent.exe и rmngr.exe.conf.cfg, расположенном в каталоге bin установленной платформы на сервере. Хотя динамическое распределение портов обычно справляется само, фиксированный диапазон может сделать работу сервера более предсказуемой при высокой нагрузке.Мы проанализировали причины нестабильной работы отладчика. Основной вывод: если вы работаете в команде из нескольких человек на одном сервере, наиболее надежным решением станет переход на HTTP-отладку. Это не только избавит вас от необходимости вручную подключаться к портам, но и сделает процесс разработки более предсказуемым. Если же вы все-таки предпочитаете TCP, убедитесь, что вы используете актуальную версию платформы, так как большинство ошибок с поиском портов в кластере серверов уже исправлены разработчиками 1С.