Рубрика:
Базы данных /
Изучаем «1С»
|
Facebook
Мой мир
Вконтакте
Одноклассники
Google+
|
ОЛЕГ ФИЛИППОВ, заместитель начальника отдела разработки, АНТ-Информ, comol@mail.ru
Ускоряем запуск 1С (для разработчика)
Рассмотрим несколько приемов, которые позволяют в десятки раз ускорить время запуска 1С, особенно после обновления конфигурации
Почему 1С запускается долго?
«Загрузка 1С – процесс длительный, и это нормальная ситуация» – такое популярное мнение можно нередко услышать на просторах Интернета. На самом деле запуск 1С в пользовательском режиме при нормальных настройках и хорошем оборудовании – дело нескольких секунд. Большинство пользователей, опираясь на свой опыт, со мной не согласятся.
Действительно, на запуск 1С у пользователя уходит куда больше времени. Почему? Да тут все просто: бОльшую часть времени при загрузке 1С тратит не на старт клиентского приложения и подключение к серверу, а на запуск некой программки 1CEStart.exe, которая прочитает настройки, определит версию сервера, получит список баз и т.п.
Но и на этом все не закончится – далее будут прочитан список пользователей из базы, загружены настройки пользователей и в списке выбран последний пользователь, который заходил в систему. При этом открывается диалоговое окно, предлагающее выбрать учетную запись и ввести пароль. И только после успешного ввода пароля наконец начнется запуск 1С, который в общем объеме потраченного времени займет не самую большую долю.
Для пользователя время запуска 1С не настолько критично, если оно не превышает определенного порога. Данную операцию ему необходимо проделать, как правило, всего несколько раз в день, следовательно, потери времени на запуск будут небольшими и существенно не скажутся на работе.
А вот для разработчика ситуация уже совсем другая: запуск 1С происходит регулярно, особенно на стадии отладки решения. Архитектура платформы 1С позволяет разработчику при первой необходимости пользоваться отладкой, что, кстати, положительно сказывается на времени разработки.
Кроме того, 90% работы программиста 1С – это скорее доработка уже существующего решения, поэтому отладка используется даже на начальных этапах. Это приводит к тому, что в процессе работы программиста запуск 1С и обновление конфигурации будут очень частыми операциями, и, конечно, длительное их выполнение станет существенно тормозить разработку.
Архитектура новых версий решений 1С основана на использовании большого количества объектов метаданных типа «роль». Поскольку от ролей зависит возможность доступа к объектам конфигурации, все правила, описанные для ролей, система кэширует при старте. После обновления конфигурации этот кэш надо переинициализировать. Соответственно при большом их количестве время запуска может существенно вырасти.
Подводя итог, можно выделить следующие факторы, которые приводят к замедлению запуска 1С:
- При первом запуске – чтение списка информационных баз, чтение списка пользователей, определение версии сервера.
- Повторная инициализация кэша метаданных после обновления информационной базы.
- Большое количество ролей в конфигурации.
- Чтение метаданных при запуске.
Теперь давайте попробуем разобраться, как мы можем уменьшить негативное влияние этих факторов на время запуска 1С.
Статью целиком читайте в журнале «Системный администратор», №3 за 2014 г. на страницах 36-38.
Facebook
Мой мир
Вконтакте
Одноклассники
Google+
|