Причины очень медленной работы 1с 8. Советы по автоматизации

В силу разных причин пользователи программы 1С время от времени встречаются с проблемами производительности 1С . Например: долго проводится документ, долго формируется отчет, ошибки транзакции, зависает программа, замедленный отклик на действия пользователя и т.д. Следуя нашим предписаниям можно добиться значительных успехов в быстродействии программы, предупредить превышение лимита системы. Это не панацея от всех болезней, но как раз большинство причин тормозов 1С кроется именно в этих вопросах.

1. Не проводить регламентные и фоновые задания во время работы пользователей

Первое и главное правило для администраторов системы – вынести выполнение всех фоновых заданий во внерабочее время. Система должна быть максимально разгружена, чтобы выполнять регламентные задания (индексация, проведение документов, выгрузка данных) и одновременно не мешать работать пользователям. Ни система не пользователи не будут мешать друг другу если будут работать в разное время.

2. Не производить обмены данными РИБ во время рабочего дня пользователей

Хотя в последнее время компании отказываются от системы обмена данными РИБ в пользу online режима и терминального доступа, не лишним будет помнить, что во время выгрузки-загрузки данных обмена невозможно проведение документов и полноценная работа в программе. По-возможности и эту процедуру, если она есть, необходимо с помощью фоновых заданий выполнять ночью.

3. Вовремя повышать производительность ПК, сопоставлять его мощности реальным потребностям

Не забывайте что одновременная работа 30 и 100 пользователей в системе дают разную нагрузку. Соответственно если планируется количественный рост пользователей служба ИТ своевременно должна рассмотреть вопрос с руководством компании о расширении парка машин, закупки дополнительной памяти или серверов.

4. ПО на котором работает 1С

Программа 1С такова, что работает по разному на операционных системах. Не известно точно почему, но это так. К примеру, серверная версия базы данных 1С на ОС Linux в связке с SQL Postgre работает значительно медленнее, чем такая же база данных 1С но на ОС Windows в связке с MS SQL. Точные причины данного факта не известны, но видимо где-то глубоко в платформе 1С существуют проблемы совместимости с операционными системами и СУБД не семейства Microsoft. Также стоит развернуть систему на 64-разрядном сервере, если планируются значительные нагрузки на базу данных.

5. Индексация БД

Внутренняя процедура программы 1С, которая «причесывает» систему изнутри. Поставьте на выполнение фоновым регламентным заданием в ночное время суток и будьте спокойны.

6. Отключение оперативного партионного учета

Дело в том, что при оперативном проведении документов происходит запись движений в регистры, в том числе в регистры партионного учета. Запись регистров партионного учета при проведении документов можно отключить в настройках программы. Раз в месяц необходимо будет запускать обработку проведения документов по партиям, например в то время, когда нагрузка на базу данных наименьшая или когда работает наименьшее число пользователей.

7. Оперативная память

Используйте следующую формулу:

ОЗУ = (БД 1+БД 2+БД N) / 100 * 70

Около 70 % от совокупного физического объема баз данных. Базы 1С любят хорошо питаться оперативной памятью. Не забывайте об этом.

8. По возможности оптимизировать самописные отчеты и обработки с несовершенными и устаревшими кодами

В процессе жизни компании существуют потребности в написании отчетов и обработок, а также доработок для управления бизнес-процессами и извлечения специфической информации. Как раз эти все доработки и могут глючить, замедлять работу, т.к. а) некие кулибины могли когда-то навернуть тяжелый неправильный код трудный к выполнению программой и требующий значительных усилий для выполнения б) код на котором написана обработка или отчет мог морально устареть и требует пересмотра, перепрограммирования. Пользуйтесь правилом – Чем меньше мы что-то меняем в программе, тем лучше.

9. Чистка кэша

Обычная перезагрузка сервера иногда решает проблемы с устаревшим кэшем 1С. Просто попробуйте. Также может помочь выгрузка – загрузка информационной базы через конфигуратор. И самое последнее чистка кэша конкретного пользователя – удаление папок в системном каталоге 1С вида: kexifzghjuhfv8j33hbdgk0. Но удаление кэшированых папок пользователя последнее дело, т.к. кроме удаления мусора чистка кэша имеет неприятные последствия в виде удаления сохраненных настроек отчетов, интерфейса меню пользователя.

10. Сокращения физического объема баз данных

Больше база – больше ресурсов. Закономерно. Воспользуйтесь стандартными средствами 1С для свертки базы. Подумайте, вдруг вы можете отказаться от данных пятилетней давности ради увеличения производительности. А если вам понадобятся все же данные прошлой пятилетки всегда можно воспользоваться копией базы.

11. Правильная организация архитектуры

В целом архитектура корпоративной информационной системы должна быть правильной. Что мы подразумеваем под правильной системой? Сопоставимость возлагающихся на систему задач с имеющимся оборудованием и программным обеспечением. Планируйте систему совместно с: системным администратором (потому что он знает парк машин), программистом 1С (потому что он знает потребности 1С в ресурсах) и руководителем компании (потому что он знает о будущем росте или сокращении компании).

1С: Бухгалтерия – одна из самых известных и наиболее удобных программ бухгалтерского учета. Доказательством этого является ее повсеместное распространение во всех сферах деятельности: торговле, производстве, финансах и др.

К сожалению, как и у всех компьютерных программ в 1С: Бухгалтерия также бывают различные сбои и зависания. Одна из наиболее часто встречающихся проблем – медленная работа системы.

С целью разобраться в причинах ее возникновения и попытаться их решить и написана сегодняшняя статья.

Устранение распространенных причин медленной работы 1С

1. Самая часто встречающаяся причина медленной работы программы - длительное получение доступа к базовому файлу 1С, которое возможно из-за ошибок на жестком диске или из-за плохого качества интернет-соединения, в случае использования облачных технологий. Возможны так же проблемы в настройках антивирусной системы.

Решение : провести сканирование с устранением ошибок и дефрагментацию жесткого диска . Протестировать скорость доступа в Интернет. При низких показателях (менее 1 Мб/с) обратиться в службу ТП провайдера. Временно отключить антивирусную защиту и файрвол в антивирусной системе.

2. Возможно, медленная работа программы происходит из-за большого размера файла базы данных.

Чтобы решить эту проблему откройте 1С в режиме «Конфигуратора», в меню системы выберите пункт «Администрирование», далее «Тестирование и исправление». В окне обязательно должен быть выбран пункт «Сжатие таблиц информационной базы данных», ниже активен пункт «Тестирование и исправление». Нажмите «Выполнить» и дождитесь окончание процесса.

3. Следующая возможная причина - устаревшее ПО или неактуальная версия самой программы.

Выход из данной ситуации : обновить ПО операционной системы или установить последнюю на данный момент версию программы 1С. С целью предупреждающих действий, всегда производите обновление до актуальной версии, в ней устранены ошибки ранних конфигураций.

Чтобы установить последнюю версию системы 1С, необходимо зайти в программу в режиме «Конфигурация», далее из меню перейти в «Сервис» -> «Служебные» -> «Обновление конфигурации», после этого выбрать настройки по умолчанию и нажать кнопку «Обновить».

Фразу «1С тормозит» наверняка приходилось слышать всем работающим с продуктами на платформе «1С:Предприятие». Кто-то жаловался на это, кто-то принимал жалобы. В этой статье мы постараемся рассмотреть наиболее распространенные причины этой проблемы и варианты ее решения.

Обратимся к метафоре: прежде, чем выяснять, почему человек куда-то не пришел, стоит убедиться, что у него есть ноги, чтобы ходить. Итак, начнем с требований к «железу» и сети.

Если установлена ОС Windows 7:

Если установлена ОС Windows 8 или 10:



Также помните, что свободного места на диске должно быть не менее 2ГБ, а подключение по сети – иметь скорость не менее 100 Мб/сек.

Характеристики серверов в клиент-серверном варианте рассматривать большого смысла не имеет, потому что в этом случае все зависит от количества пользователей и специфики тех задач, которые они решают в 1С.

При выборе конфигурации для сервера стоит помнить о следующем:

  • Один рабочий процесс сервера 1С потребляет в среднем 4 ГБ (не путать с соединением пользователя, т.к. на один рабочий процесс может приходиться столько соединений, сколько вы укажите в настройках сервера);
  • Использование на одном физическом сервере 1С и СУБД (особенно MS SQL) дает выигрыш при обработке больших массивов данных (например, закрытии месяца, расчете бюджета по модели и т.д.), но существенно снижает производительность при ненагруженных операциях (например, создание и проведение документа реализации и т.д.);
  • Помните, что сервера 1С и СУБД должны быть в связке по каналу «толщиной» от 1 ГБ;
  • Используйте высокопроизводительные диски и не совмещайте роли сервера 1С и СУБД с другими ролями (например, файловый, АД, контроллер домена и т.д.).

Если после проверки оборудования 1С все равно «тормозит»

У нас маленькая компания, 7 человек, а 1С «тормозит». Обращались к специалистам, и те сказали, что нас спасет только клиент-серверный вариант. Но для нас такое решение не приемлемо, это слишком дорого!

Проведите регламентные работы в базе*:

1. Запустите базу в режиме конфигуратора.


2. Выберите в главном меню пункт «Администрирование», а в нем – «Тестирование и исправление».


3. Установите все галочки, как на картинке. Нажмите «Выполнить».

*Эта процедура может занимать от 15 минут до часа в зависимости от размеров базы и характеристик вашего ПК.

Если это не помогло, то делаем клиент-серверное подключение, но без дополнительных вложений в «железо» и ПО:

1. Выберите самый не загруженный компьютер в офисе из числа стационарных (не notebook): у него должно быть не менее 4 ГБ оперативной памяти и сетевое подключение не менее 100 Мб/сек.

2. Активируйте на нем IIS (Internet Information Server). Для этого:





3. Опубликуйте свою базу на этом компьютере. По этой теме есть доступный материал на ИТС, или обратитесь к специалисту из поддержки.

4. На компьютерах пользователей настройте доступ к базе через тонкий клиент. Для этого:


Откройте окно запуска 1С.


Выберите вашу рабочую базу. Здесь это «Ваша база». Нажмите «Изменить». Установите переключатель в положение «На веб-сервере», укажите в строке под ним имя или IP-адрес сервера, на котором активировали IIS, и имя под которым публиковали базу. Нажмите кнопку «Далее».


Установите переключатель «Основной режим запуска» в режим «Тонкий клиент». Жмите «Готово».

У нас немаленькая компания, но и не очень большая, человек 50 – 60. Мы используем клиент-серверный вариант, но «тормозит» 1С жутко.

В этом случае рекомендуется разделить сервер 1С и сервер СУБД на два разных сервера. При разделении обязательно помните: если они остались на одном физическом сервере, который просто виртуализовали, то диски у этих серверов должны быть разными –разными физически! Также обязательно настройте регламентные задания на сервере СУБД, когда речь идет об MS SQL (подробнее об этом описано на сайте ИТС)

У нас немаленькая компания, более 100 пользователей. Все настроено в соответствии с рекомендациями 1С для такого варианта, но при проведении некоторых документов 1С очень сильно «тормозит», а иногда вообще возникает ошибка блокировки. Может быть, сделать свертку базы?

Подобная ситуация возникает из-за размера вполне конкретного регистра накопления или бухгалтерии (но чаще – накопления), из-за того что регистр либо вообще на «закрывается», т.е. есть движения приход, но нет движений расход, либо количество измерений, по которым считаются остатки регистра, очень велико. Может иметь место даже микс из двух предыдущих причин. Как определить, какой именно регистр все портит?

Фиксируем время, когда документы проводятся медленно, либо время и пользователя, у которого возникла ошибка блокировки.

Открываем журнал регистрации.



Находим нужный нам документ, в нужное время, по нужному пользователю с типом события «Данные.Проведение».



Отсматриваем весь блок проведения до момента отмены транзакции, если была ошибка блокировки, или отыскиваем самое долгое изменение (время от предыдущей записи больше минуты).

После этого принимаем решение, имея в виду, что свернуть именно этот регистр в любом случае дешевле, чем всю базу.

Мы очень крупная компания, более 1000 пользователей, тысячи документов в день, свой ИТ-департамент, огромный парк серверов, несколько раз оптимизировали запросы, но 1С «тормозит». Мы, видимо, переросли 1С, и нам нужно что-то более мощное.

В подавляющем большинстве таких случаев, «тормозит» не 1С, а архитектура используемого решения. Делая выбор в пользу новой программы для бизнеса помните, что написать свои бизнес-процессы в программе дешевле и проще, чем переделать их под какую-то, тем более, очень дорогую программу. Такую возможность предоставляет только 1С. Поэтому, лучше задаться вопросом: «Как исправить ситуацию? Как заставить 1С «летать» на таких объемах?». Вкратце рассмотрим несколько вариантов «лечения»:

  • Используйте технологии параллельного и асинхронного программирования, которые поддерживает 1С (фоновые задания и запросы в цикле).
  • При проектировании архитектуры решения откажитесь от использования регистров накопления и регистров бухгалтерии в самых «узких» местах.
  • Разрабатывая структуру данных (регистры накопления и/или сведений) придерживайтесь правила: «Самая быстрая таблица для записи и чтения – это таблица с одной колонкой». О чем идет речь, станет более ясно, если посмотреть на типовой механизм РАУЗ.
  • Для обработки больших объемов данных используйте вспомогательные кластеры, где подключена та же база (но ни в коем случае так нельзя делать при интерактивной работе!!!). Это позволит обойти стандартные блокировки 1С, что даст возможность работать с базой почти на той же скорости, что и при работе непосредственно средствами SQL.

Стоит отметить, что оптимизация 1С для холдингов и крупных компаний – тема для отдельной, большой статьи, поэтому следите за обновлением материалов на нашем сайте.

  1. Настройка регламентных и фоновых заданий;
  2. Диагностика и устранение ошибок информационной базы, имеющий файловый формат хранения данных;
  3. Запустить индексацию полнотекстового поиска в 1С либо выключить его вовсе;
  4. Запуск базы на последних Платформах 8.3.8;
  5. Запуск в Тонком Клиенте;
  6. Увеличение скорости перепроведения документов при отключенном антивирусе;
  7. Запустить Пересчет итогов и восстановление последовательности;
  8. Выполнить Тестирование и исправление базы, проверку утилитой chdbfl.exe;
  9. Если конфигурация не типовая, то есть доработанная программистами под конкретную организацию, выполнить Проверку конфигурации;
  10. Отключить ненужные функциональные режимы;
  11. Настроить права пользователей;
  12. Свертка базы;
  13. Модернизация аппаратной части.

Способ 1. Настройка регламентных и фоновых заданий

Приложение в новой редакции 1С Бухгалтерия 3.0 помимо выполнения основной работы запускает операции в фоновом режиме, которые ведут к снижению быстродействия программы.

Фоновый режим - это режим ожидания, то есть операция запущена всегда, хоть и не используется.

Шаг 1. Настройка регламентных и фоновых заданий

Открываем перечень регламентных и фоновых заданий: раздел Администрирование – Поддержка и обслуживание – Регламентные операции – Регламентные и фоновые задания :

После запуска программы 1С 8.3 автоматически запускаются фоновые задания и выполняются регламентные задачи, которые используют огромное количество ресурсов и замедляют работу программы. Следовательно, нужно проанализировать работу бухгалтеров и определить какие фоновые задачи целесообразно оставить в автозапуске, а какие нужно отключить.

На рисунке видим список регламентных заданий, которые запускаются в 1С 8.3 Бухгалтерия:

На рисунке видим список выполненных фоновых заданий:

Например,

  • Программа 1С 8.3 Бухгалтерия для обновления различных классификаторов постоянно подключается к сайту;
  • Если на предприятии не ведутся операции связанные с иностранной валютой, то нет необходимости отслеживать курсы валют;
  • Если бухгалтер не пользуется полнотекстовым поиском в программе, то не целесообразно запускать процесс «Извлечение текста».

Шаг 2. Отключение нецелесообразных задач

Рассмотрим подробно как отключить загрузку . Установим курсор на нужную строку и сделаем двойной щелчок:

Для отключения задания убираем галочку Включено:

Шаг 3. Настройка расписания регламентных задач

Рассмотрим подробно, как настроить расписание . Установим курсор на нужную строку и сделаем двойной щелчок:

Выберем пункт Расписание:

В открывшемся окне переходим на нужную закладку и делаем соответствующую настройку:

Способ 2. Диагностика и устранение ошибок информационной базы, имеющей файловый формат хранения данных

Шаг 1.

Создаем резервную копию базы данных.

Шаг 2.

Запускаем процедуру . Для этого открываем Конфигуратор и запускаем процедуру Тестирование и исправления информационной базы: раздел Администрирование – Тестирование и исправление. Выбираем проверки и режимы, которые нужно выполнить для информационной базы:

Рассмотрим, подробнее предлагаемые варианты проверки:

  • Реиндексация таблиц информационной базы – перестраивает индексы таблиц для повышения быстродействия работы базы данных;
  • Проверка логической целостности информационной базы – проверка логики базы данных;
  • Проверка ссылочной целостности информационной базы – проверка логической целостности базы данных для обнаружения «битых» ссылок;
  • Пересчет итогов – перерасчет итогов таблиц регистров накопления;
  • Сжатие таблиц информационной базы – уменьшает размер базы данных после тестирования и исправления;
  • Реструктуризация таблиц информационной базы – оптимизирует структуру базы данных используя вспомогательные файлы с целью повышения стабильности и быстродействия.

Если выбираем вариант процедуры Тестирование и исправление в режиме Проверка ссылочной целостности информационной базы, то пункты настроек по обработке ошибок базы данных становятся доступными:

  • Пункт При наличии ссылок на несуществующие объекты означает, что при обнаружении «битых» ссылок, будет обрабатывать ссылки, используя выбранный вариант;
  • Пункт При частичной потере данных объектов означает, что остаток данных достаточен для восстановления данных какого-либо объекта.

Процедуру тестирования и исправления информационной базы 1С можно выполнять только в монопольном режиме.

Способ 3. Запустить индексацию полнотекстового поиска в 1С либо выключить его вовсе

Полнотекстовый поиск данных компания 1С разработала для облегчения поиска незнакомой информации пользователем. Особенностью полнотекстового поиска данных в 1С 8.3 является:

  • Пользователь может вводить поисковый запрос в простой форме и использовать специальные операторы, такие как: и, или, не .
  • Полнотекстовый поиск данных работает с полями типа ХранилищеЗначения и с длинными текстовыми полями, при этом пользователю не будут показаны результаты на которых у него нет прав.

Например, нужно настроить полнотекстовый поиск в документах Авансовый отчет.

Шаг 1.

Шаг 2.

Открываем документ Авансовый отчет: меню Конфигуратор – Открыть конфигурацию.

Шаг 3.

В строке Полнотекстовый поиск выбираем пункт Использовать: Авансовый отчет – Поле ввода – Полнотекстовый поиск:

Шаг 4.

Запускаем программу и обновляем режим полнотекстового поиска. Открываем Регламентные операции: раздел Администрирование – Настройки программы – Поддержка и обслуживание:

Шаг 5.

Открываем настройку и обновляем индекс используя кнопку Обновить индекс:

Способ 4. Запуск базы на последних платформах 8.3.8

Как обновить технологическую платформу 1С 8.3 смотрите в нашем видео уроке:

Специалисты 1С улучшили распределение нагрузки:

  • Имеется возможность более точно управлять объемом памяти, расходуемой рабочими процессами сервера, что позволяет повысить устойчивость кластера к неосторожным действиям пользователей.
  • Реструктуризация информационных баз в фоновом режиме. Новая возможность позволяет свести к минимуму время простоя системы, необходимое для обновления прикладных решений.
  • Платформа версии 8.3 получила новый интерфейс приложений “Такси”, более удобный и наглядный с новым ярким дизайном. Улучшились возможности навигации по приложению. Пользователь может самостоятельно настраивать свое рабочее пространство, располагая панели в разных областях экрана. Новый механизм ввода по строке существенно ускоряет поиск данных. Подробнее о новых возможностях программы 1С 8.3 Бухгалтерия интерфейс “Такси” смотрите в нашем видео:

Способ 5. Запуск в Тонком клиенте

Работа в режиме тонкого клиента возможна только в режиме управляемого приложения. В режиме тонкого клиента все действия выполняются на сервере, пользователю выводиться лишь отображение получаемой информации. Этот режим работы не требует больших ресурсов как системы, так и канала связи.

Способ 6. Поменять антивирусное программное обеспечение

Если стоит антивирус Avast или Касперский, то желательно заменить на другой. Опыт показал увеличение скорости перепроведения документов при отключенном антивирусе в разы, так как антивирусы занимают ресурсы компьютера.

Способ 7. Тестирование и исправление базы, проверка утилитой chdbfl.exe

Необходимо выполнить Тестирование и исправление базы, предварительно сделав копию.

Шаг 1. Делаем копию базы данных

Как сделать резервную копию 1С 8.3 смотрите в следующем видео уроке:

Шаг 2. Выполняем проверку с помощью утилиты chdbfl.exe

Утилиту chdbfl.exe используют в случаях, когда система не запускается даже в режиме конфигуратора. Расположена утилита в папке «bin» установленной технологической платформы, например: c:\Program Files (x86)\1cv8\8.3.9.1818\bin\chdbfl.exe:

Выполняем проверку с помощью утилиты chdbfl.exe:

Шаг 3. Выполнить Тестирование и исправление базы

Выполнить Тестирование и исправление базы запустив систему в режиме конфигуратора.

Шаг 4. Восстановление последовательности документов

Для восстановления последовательности в 1С 8.3 открываем Все функции: главное Меню – Все функции. Выбираем нужный пункт и открываем используя кнопку Открыть:

В открывшемся окне на закладке Восстановление последовательностей и нажимаем Восстановить или Восстановить все:

Способ 8. Если конфигурация не типовая, то выполнить проверку конфигурации

Если конфигурация не типовая, то есть доработанная программистами под конкретную организацию, то выполняем проверку конфигурации.

Шаг 1.

Запускаем программу в режиме Конфигуратор.

Шаг 2.

Открыть конфигурацию БД: раздел Конфигурация – Конфигурация базы данных:

Шаг 3.

Выбираем пункт Проверка конфигурации и делаем настройки:

Способ 9. Отключить ненужные функциональные режимы

Открываем Функциональность программы 1С 8.3: раздел Главное – Настройки – Функциональность, делаем настройки по каждому разделу:

Способ 10. Настроить права пользователей

Шаг 1.

Запускаем 1С 8.3 в режиме Конфигуратор.

Шаг 2.

Открываем список пользователей: раздел Администрирование – Пользователи. На закладке Прочее определяем какие роли нужно назначить пользователю и отметить их галочкой.

Уменьшение выбранного функционала уменьшает время на отсортировку программой управляемых форм при открытии списка документов, то есть чем меньше лишнего в управляемом интерфейсе – тем быстрее он работает:

Способ 11. Дефрагментация диска с файловой базой

Процедура дефрагментация диска производит оптимизацию файлов находящихся на жестком диске для увеличения скорости работы системы. Дефрагментацию нужно делать только при необходимости, так как увеличивает процесс износа диска.

Выделив жесткий диск, правой клавишей мыши вызываем команду Свойства:

На закладке Сервис выбираем Оптимизация и дефрагментация диска:

Способ 12. Свертка базы

– это ввод актуальных остатков на определенную дату и удаление старых, ненужных документов. Этот способ может оказаться полезным, если база большого объема, например, за несколько лет. Свертку необходимо производить без работающих в системе пользователей.

Шаг 1. Создаем копию базы данных

Шаг 2. Выполняем процедуру свертки базы 1С 8.3

Раздел Администрирование – Сервис – Свертка информационной базы.

На первом этапе программа 1С 8.3 предлагает сделать резервную копию, где нужно указать каталог для сохранения. Нажимаем Далее:

В последнее время пользователи и администраторы все чаще начинают жаловаться, что новые конфигурации 1С, разработанные на основе управляемого приложения, работают медленно, в некоторых случаях неприемлемо медленно. Понятно, что новые конфигурации содержат новые функции и возможности, а поэтому более требовательны к ресурсам, но понимания, что в первую очередь влияет на работу 1С в файловом режиме у большинства пользователей нет. Постараемся исправить этот пробел.

В наших мы уже касались влияния производительности дисковой подсистемы на скорость работы 1С, однако данное исследование касалось локального использования приложения на отдельном ПК или терминальном сервере. В тоже время большинство небольших внедрений предполагают работу с файловой базой по сети, где в качестве сервера используется один из пользовательских ПК, либо выделенный файловый сервер на базе обычного, чаще всего также недорогого, компьютера.

Небольшое исследование русскоязычных ресурсов по 1С показало, что данный вопрос старательно обходится стороной, в случае возникновения проблем обычно советуется переход к клиент-серверному или терминальному режиму. А также практически общепринятым стало мнение, что конфигурации на управляемом приложении работают значительно медленнее обычных. Как правило аргументы приводятся "железные": "вот Бухгалтерия 2.0 просто летала, а "тройка" еле шевелится, безусловно, доля истины в этих словах есть, поэтому попробуем разобраться.

Потребление ресурсов, первый взгляд

Перед тем, как начать это исследование, мы поставили перед собой две задачи: выяснить, действительно ли конфигурации на основе управляемого приложения медленнее обычных и какие именно ресурсы оказывают первоочередное влияние на производительность.

Для тестирования мы взяли две виртуальные машины под управлением Windows Server 2012 R2 и Windows 8.1 соответственно, выделив им по 2 ядра хостового Core i5-4670 и 2 ГБ оперативной памяти, что соответствует примерно средней офисной машине. Сервер разместили на RAID 0 массиве из двух , а клиент на аналогичном массиве из дисков общего назначения.

В качестве подопытных баз мы выбрали несколько конфигураций Бухгалтерии 2.0, релиза 2.0.64.12 , которую затем обновили до 3.0.38.52 , все конфигурации запускались на платформе 8.3.5.1443 .

Первое, что обращает на себя внимание, это выросший размер информационной базы "тройки", причем существенно выросший, а также гораздо большие аппетиты к оперативной памяти:

Мы уже готовы услышать привычное: "да чего они там такого добавили в эту тройку", но давайте не будем спешить. В отличие от пользователей клиент-серверных версий, которые требуют наличия более-менее квалифицированного администратора, пользователи файловых версий крайне редко задумываются об обслуживании баз. Также редко об этом думают обслуживающие (читай - обновляющие) эти базы сотрудники специализированных фирм.

Между тем информационная база 1С - это полноценная СУБД своего формата, которая тоже требует обслуживания и для этого даже есть инструмент, который называется Тестирование и исправление информационной базы . Возможно злую шутку сыграло название, которое как-бы подразумевает, что это инструмент для устранения проблем, но низкая производительность - тоже проблема, а реструктуризация и реиндексация, вместе со сжатием таблиц - хорошо известные любому администратору СУБД средства оптимизации баз данных. Проверим?

После применения выбранных действий база резко "похудела", став даже меньше "двойки", которую тоже никто никогда не оптимизировал, также немного уменьшилось потребление ОЗУ.

В последствии, после загрузки новых классификаторов и справочников, создания индексов и т.п. размер базы вырастет, в целом базы "тройки" больше баз "двойки". Однако более важно не это, если вторая версия довольствовалась 150-200 МБ оперативной памяти, то новой редакции нужно уже полгигабайта и из этого значения следует исходить, планируя необходимые ресурсы для работы с программой.

Сеть

Пропускная способность сети - один наиболее важных параметров для сетевых приложений, особенно, как 1С в файловом режиме, перемещающих по сети значительные объемы данных. Большинство сетей небольших предприятий построены на базе недорогого 100 Мбит/с оборудования, поэтому мы начали тестирование именно со сравнения показателей производительности 1С в сетях 100 Мбит/с и 1 Гбит/с.

Что происходит при запуске файловой базы 1С по сети? Клиент скачивает во временные папки достаточно большое количество информации, особенно если это первый, "холодный", запуск. На 100 Мбит/с мы ожидаемо упремся в ширину канала и загрузка может занять значительное время, в нашем случае около 40 секунд (цена деления графика - 4 сек).

Второй запуск происходит быстрее, так как часть данных сохраняется в кэше и находится там до перезагрузки. Переход на гигабитную сеть способен значительно ускорить загрузку программы, как "холодный", так и "горячий", причем соотношение значений при этом соблюдается. Поэтому мы решили выразить результат в относительных значениях, взяв за 100% самое большое значение каждого замера:

Как можно заметить из графиков, Бухгалтерия 2.0 загружается при любой скорости сети вдвое быстрее, переход со 100 Мбит/с на 1 Гбит/с позволяет ускорить время загрузки в четыре раза. Разницы между оптимизированной и неоптимизированной базами "тройки" в данном режиме не наблюдается.

Также мы проверили влияние скорости сети на работу в тяжелых режимах, например, при групповом перепроведении. Результат также выражен в относительных значениях:

Здесь уже интереснее, оптимизированная база "тройки" в 100 Мбит/с сети работает с такой же скоростью, как и "двойка", а неоптимизированная показывает вдвое худший результат. На гигабите соотношения сохраняются, неоптимизированная "тройка" также вдвое медленнее "двойки", а оптимизированная отстает на треть. Также переход на 1 Гбит/с позволяет сократить время проведения в три раза для редакции 2.0 и в два раза для 3.0.

Для того, чтобы оценить влияние скорости сети на повседневную работу мы воспользовались Замером производительности , выполнив в каждой базе последовательность заранее предопределенных действий.

Собственно, для повседневных задач пропускная способность сети не является узким местом, неоптимизированная "тройка" всего лишь на 20% медленнее двойки, а после оптимизации оказывается примерно настолько же быстрее - сказываются преимущества работы в режиме тонкого клиента. Переход на 1 Гбит/с не дает оптимизированной базе никаких преимуществ, а неоптимизированная и двойка начинают работать быстрее, показывая небольшую разницу между собой.

Из проведенных тестов становится очевидно, что сеть не является узким местом для новых конфигураций, а управляемое приложение работает даже быстрее обычного. Также можно рекомендовать переход на 1 Гбит/с если для вас критичны тяжелые задачи и скорость загрузки баз, в остальных случаях новые конфигурации позволяют эффективно работать даже в медленных 100 Мбит/с сетях.

Так почему же 1С тормозит? Будем разбираться дальше.

Дисковая подсистема сервера и SSD

В прошлом материале мы добились увеличения производительности 1С разместив базы на SSD. Возможно недостаточно производительности дисковой подсистемы сервера? Мы сделали замеры производительности дисковой сервера во время группового проведения сразу в двух базах и получили довольно оптимистичный результат.

Несмотря на относительно большое количество операций ввода-вывода в секунду (IOPS) - 913, длина очереди не превысила 1,84, что для двухдискового массива очень хороший результат. Исходя из него можно сделать предположение, что зеркала из обычных дисков будет достаточно для нормальной работы 8-10 сетевых клиентов в тяжелых режимах.

Так нужен ли SSD на сервере? Лучше всего ответить на этот вопрос поможет тестирование, которое мы провели по аналогичной методике, сетевое подключение везде 1 Гбит/с, результат также выражен в относительных значениях.

Начнем со скорости загрузки базы.

Может быть кому-то и покажется удивительным, но на скорость загрузки базы SSD на сервере не влияет. Основной сдерживающий фактор здесь, как показал предыдущий тест, пропускная способность сети и производительность клиента.

Перейдем к перепроведению:

Выше мы уже отмечали, что производительности дисковой вполне достаточно даже для работы в тяжелых режимах, поэтому на скорость проведения SSD также не оказывает влияния, кроме неоптимизированной базы, которая на SSD догнала оптимизированную. Собственно, это еще раз подтверждает, что операции оптимизации упорядочивают информацию в базе данных, уменьшая количество случайных операций ввода вывода и повышая скорость доступа к ней.

На повседневных задачах картина аналогичная:

Выигрыш от SSD получает только неоптимизированная база. Вы, конечно, можете приобрести SSD, но гораздо лучше будет задуматься о своевременном обслуживании баз. Также не забывайте о дефрагментации раздела с информационными базами на сервере.

Дисковая подсистема клиента и SSD

Влияние SSD на скорость работы локально установленной 1С мы разбирали в , многое из сказанного справедливо и для работы в сетевом режиме. Действительно, 1С достаточно активно использует дисковые ресурсы, в том числе и для фоновых и регламентных задач. На рисунке ниже можно видеть, как Бухгалтерия 3.0 довольно активно обращается к диску в течении порядка 40 секунд после загрузки.

Но при этом следует осознавать, что для рабочей станции где активная работа производится с одной - двумя информационными базами ресурсов производительности обычного HDD массовой серии вполне достаточно. Приобретение SSD способно ускорить некоторые процессы, но радикального ускорения в повседневной работе вы не заметите, так как, например, загрузка будет ограничиваться пропускной способностью сети.

Медленный жесткий диск способен замедлить некоторые операции, но сам по себе являться причиной торможения программы не может.

Оперативная память

Несмотря на то, что оперативка сейчас неприлично дешева, многие рабочие станции продолжают работать с тем объемом памяти, который был установлен при покупке. Вот тут и подстерегают первые проблемы. Уже исходя из того, что в среднем "тройке" требуется около 500 МБ памяти можно предположить, что общего объема оперативной памяти в 1ГБ для работы с программой будет недостаточно.

Мы уменьшили память системы до 1 Гб и запустили две информационные базы.

На первый взгляд все не так и плохо, программа поумерила аппетиты и вполне уложилась в доступную память, но не будем забывать, что потребность в оперативных данных не изменилась, так куда же они делись? Сброшены в дисковый, кэш, подкачку и т.п., суть этой операции состоит в том, что не нужные в данный момент данные отправляются из быстрой оперативной памяти, количества которой недостаточно, в медленную дисковую.

К чему это приведет? Посмотрим, как используются ресурсы системы в тяжелых операциях, например, запустим групповое перепроведение сразу в двух базах. Сначала на системе с 2 ГБ оперативной памяти:

Как видим, система активно использует сеть, для получения данных и процессор для их обработки, дисковая активность незначительна, в процессе выполнения обработки она эпизодически вырастает, но не является сдерживающим фактором.

Теперь уменьшим память до 1 ГБ:

Ситуация радикальным образом меняется, основная нагрузка теперь приходится на жесткий диск, процессор и сеть простаивают, ожидая пока система считает с диска в память нужные данные и отправит туда ненужные.

При этом даже субъективная работа с двумя открытыми базами на системе с 1 ГБ памяти оказалась крайне некомфортной, справочники и журналы открывались со значительной задержкой и активным обращением к диску. Например, открытие журнала Реализация товаров и услуг заняло около 20 секунд и сопровождалось все это время высокой дисковой активностью (выделено красной линией).

Чтобы объективно оценить влияние оперативной памяти на производительность конфигураций на основе управляемого приложения мы провели три замера: скорость загрузки первой базы, скорость загрузки второй базы и групповое перепроведение в одной из баз. Обе базы полностью идентичны и созданы копированием оптимизированной базы. Результат выражен в относительных единицах.

Результат говорит сам за себя, если время загрузки вырастает примерно на треть, что еще вполне терпимо, то время выполнения операций в базе вырастает в три раза, ни о какой комфортной работе в таких условиях говорить не приходится. Кстати, этот тот случай, когда покупка SSD способна улучшить ситуацию, но гораздо проще (и дешевле) бороться с причиной, а не с последствиями, и просто купить нужное количество оперативной памяти.

Недостаток оперативной памяти - основная причина по которой работа с новыми конфигурациями 1С оказывается некомфортной. Минимально подходящими следует считать конфигурации с 2 ГБ памяти на борту. При этом учитывайте, что в нашем случае были созданы "тепличные" условия: чистая система, запущены только 1С и диспетчер задач. В реальной жизни на рабочем компьютере как правило открыты браузер, офисный пакет, работает антивирус и т.д, и т.п., поэтому исходите из потребности 500 МБ на одну базу плюс некоторый запас, чтобы при тяжелых операциях вы не столкнулись с недостатком памяти и резким снижением производительности.

Процессор

Центральный процессор без преувеличения можно назвать сердцем компьютера, так как именно он, в конечном итоге, осуществляет обработку всех вычислений. Чтобы оценить его роль мы провели еще один набор тестов, такой же, как и для оперативной памяти, уменьшив количество доступных виртуальной машине ядер с двух до одного, при этом тест выполнялся два раза с объемами памяти в 1 ГБ и 2 ГБ.

Результат оказался довольно интересным и неожиданным, более мощный процессор довольно эффективно брал на себя нагрузку в условиях недостатка в ресурсах, в остальное время не давая каких-либо ощутимых преимуществ. 1С Предприятие (в файловом режиме) сложно назвать приложением, активно использующим процессорные ресурсы, скорее нетребовательным. А в тяжелых условиях на процессор ложится нагрузка не столько по обсчету данных самого приложения, сколько обслуживания накладных расходов: дополнительных операций ввода вывода и т.п.

Выводы

Итак, почему тормозит 1С? В первую очередь это недостаток оперативной памяти, основная нагрузка в этом случае ложится на жесткий диск и процессор. А если они не блистают производительностью, как это обычно бывает в офисных конфигурациях, то получаем ситуацию, описанную в начале статьи - "двойка" работала нормально, а "тройка" безбожно тормозит.

На второе место стоит вынести производительность сети, медленный 100 Мбит/с канал способен стать реальным бутылочным горлышком, но в тоже время режим тонкого клиента способен поддерживать довольно комфортный уровень работы даже на медленных каналах.

Затем следует обратить внимание на дисковую, покупка SSD вряд ли будет хорошим вложением денег, а вот заменить диск на более современный будет не лишним. Разницу между поколениями жестких дисков можно оценить по следующему материалу: .

И наконец процессор. Более быстрая модель конечно же не будет лишней, но большого смысла увеличивать его производительность нет, если только данный ПК не используется для тяжелых операций: групповых обработок, тяжелых отчетов, закрытия месяца и т.п.

Надеемся данный материал поможет вам быстрее разобраться в вопросе "почему тормозит 1С" и решить его наиболее эффективно и без лишних затрат.

  • Теги:

Please enable JavaScript to view the