Выход каждой новой ветки платформы 1С — это всегда событие, сочетающее в себе ожидание новых инструментов разработки и опасения по поводу стабильности текущих бизнес-процессов. Ветка 8.3.19 не стала исключением. В этой статье мы подробно разберем, какие технические сложности возникли у первых пользователей этой версии, какие критические ошибки были зафиксированы и какие действительно полезные новшества принесла эта платформа.
Мы проанализируем ситуацию совместно, опираясь на опыт практикующих специалистов, системных администраторов и разработчиков, чтобы вы могли принять взвешенное решение о переходе.
Первые сборки ветки 8.3.19 (в частности, 8.3.19.1150) получили репутацию «сырых» из-за ряда серьезных проблем, которые затрагивают как процесс разработки, так и эксплуатацию системы. Разберем основные выявленные дефекты по шагам.
CTRL+Z (отмена действия) приложение закрывается без сохранения данных.
Анализ технологического журнала показывает исключение в модуле KERNELBASE.dll с кодом 0xe06d7363. Это критическая ошибка, которая делает длительную разработку в данной версии рискованной.
GILV_TPC_G1C_83 на этой платформе зачастую не может даже запуститься в режиме «Предприятие».
Проблема проявляется как SIGSEGV (ошибка обращения к памяти) для процессов rphost и толстого клиента. Это может свидетельствовать о внутренних изменениях в механизмах интерпретации встроенного языка или работы с памятью, которые конфликтуют со старым кодом тестов.
Ошибка инициализации модуля: МодульСеанса по причине Неопознанная команда процессора встроенного языка. Это говорит о глубоких изменениях в ядре платформы, которые могут нарушать обратную совместимость.Несмотря на «детские болезни» первых релизов, ветка 8.3.19 принесла технологии, которые существенно упрощают жизнь разработчикам высоконагруженных систем. Рассмотрим их подробнее.
Поддержка протокола HTTP/2
Это одно из важнейших обновлений. Проанализируем, что это дает на практике. Протокол HTTP/2 позволяет использовать мультиплексирование, когда в рамках одного TCP-соединения передается множество запросов параллельно. Это критично для мобильных клиентов и распределенных систем, работающих через веб-сервисы, так как значительно снижается задержка (latency).
Потоковая работа с JSON
Ранее для обработки больших JSON-файлов требовалось считывать их целиком в память, что приводило к ошибкам Out of Memory на гигантских массивах данных. Теперь мы можем использовать объект ЧтениеJSON для последовательного перебора элементов без загрузки всего файла. Рассмотрим пример логики:
Чтение = Новый ЧтениеJSON;
Чтение.ОткрытьФайл("C:\BigData\import.json");
Пока Чтение.Прочитать() Цикл
Если Чтение.ТипТекущегоЗначения = ТипЗначенияJSON.ИмяСвойства И Чтение.ТекущееЗначение = "Items" Тогда
// Начинаем потоковую обработку массива объектов
КонецЕсли;
КонецЦикла;
Улучшения динамических списков
В этой версии значительно расширили возможности динамических списков. Теперь в них можно использовать вычисляемые поля и параметры более гибко. Это позволяет реализовывать сложные интерфейсные решения без написания тяжелых запросов в коде, перекладывая часть логики на механизмы платформы.
Многие пользователи заметили изменение внешнего вида иконок (их часто называют «блевотными» или «стилем 90-х»). Однако за этим стоит важная техническая необходимость — переход на векторный формат SVG.
Выясним причину: современные мониторы с высоким разрешением (4K, 5K) при использовании масштабирования в ОС Windows делали старые растровые иконки 1С размытыми. Векторные иконки позволяют платформе идеально масштабироваться при любом коэффициенте High DPI, сохраняя четкость границ.
Важно помнить, что в ноябре 2022 года в платформе (включая ветку 8.3.19) была обнаружена критическая уязвимость, позволяющая удаленно завершить работу сервера. Это привело к тому, что использование ранних релизов 8.3.19 стало небезопасным. Если вы решили переходить на эту ветку, выбирайте сборки не ниже 8.3.19.1723.
Если ваша текущая конфигурация работает стабильно на версии 8.3.16.1876 или 8.3.17.1549, и вам не требуются специфические функции вроде HTTP/2 или векторных иконок для 4K-мониторов, спешить с переходом на 8.3.19 не стоит. Рассмотрим алгоритм принятия решения:
В целом, ветку 8.3.19 можно охарактеризовать как фундамент для будущих изменений. Она привнесла много полезного в части веб-технологий и работы с данными, но платой за это стала временная нестабильность конфигуратора и ядра в первых сборках. Мы рекомендуем использовать только поздние патчи этой ветки, где большинство описанных выше багов (включая #TP-151) уже исправлены.