Ноутбуки и планшеты 

Тормоза на файловой базе - как избежать (из недавнего опыта). Советы по автоматизации Медленно работает 1с 8.3

2. Особенность работы программы. Часто даже при оптимальных настройках 1С работает очень медленно. Особенно сильно быстродействие падает, когда количество одновременно работающих с базой превышает 4-5 пользователей.

Кто вы в компании?

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

Пропускная способность сети

Как правило, с одной информационной базой (ИБ) работает не один, а несколько пользователей. При этом, постоянно идет обмен данными между компьютером, на котором установлен клиент 1С и компьютером, на котором расположена ИБ. Объем этих данных достаточно существенный. Часто возникает ситуация, когда локальная сеть работающая на скорости 100 Мбит/с, а это наиболее часто встречающаяся скорость, просто не справляется с нагрузкой. И снова пользователь жалуется на тормоза в программе.

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

Теперь давайте рассмотрим несколько решений проблемы с низкой скоростью работы 1С и их стоимость, на примере локальной сети из 10 средних компьютеров.

Решение первое. Модернизация инфраструктуры

Это, пожалуй, самое очевидное решение. Рассчитаем его минимальную стоимость.

Как минимум, на каждый компьютер нам понадобиться планка оперативной памяти на 2 Гб, стоит, в среднем, 1500 руб, сетевая карта с поддержкой скорости 1 Гбит/c, стоит около 700 руб. Дополнительно понадобиться как минимум 1 маршрутизатор, поддерживающий скорость работы 1 Гбит/с, который обойдется примерно 4000 руб. Итого, стоимость - 26000 рублей на оборудование, без учета работ.

В принципе, скорость может существенно вырасти, однако, теперь покупать в офис недорогие компьютеры уже не получится. Кроме того, данное решение не применимо для тех, кто использует Wi-Fi или хочет работать через интернет - в их случае скорость сети может быть в десятки раз ниже. Напрашивается мысль: «А нельзя ли реализовать работу программы целиком на одном мощном сервере, чтобы пользовательский компьютер не участвовал в сложных расчетах, а служил просто для передачи изображения?» Тогда можно работать даже на очень слабых компьютерах, даже в сетях с низкой пропускной способностью. Естественно такие решения существуют.

Решение второе. Сервер терминалов

Получил большую популярность еще во времена 1С 7. Реализован на серверной версии Windows и прекрасно справляется с нашей задачей. Однако, имеет свои подводные камни, а именно - стоимость лицензий.

Сама операционная система обойдется где-то в 40000 руб. Дополнительно к этому нам понадобиться для каждого, кто планирует работать в 1С еще лицензия Windows Server CAL, стоимостью примерно в 1700 руб и лицензия Windows Remote Desktop Services CAL, которая стоит около 5900 руб.

Посчитав стоимость для сети из 10 компьютеров, мы получим в итоге 116 000 руб. только на одни лицензии. Добавьте к этому стоимость самого сервера (минимум 40 000 руб) и стоимость работ по внедрению, впрочем, даже без этого, цена на лицензии получилась внушительная.

Решение третье. Сервис 1С Предприятия

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

Дело в том, что стоимость такого решения составляет от 50 000 до 80 000 руб., в зависимости от редакции. Для компании до 15 пользователей получается дороговато. Большие надежды возлагались на «мини-сервер 1С предприятия», который, по заявлениям фирмы 1С, ориентирован на малый бизнес и стоит в районе 10000 - 15000 руб.

Однако, поступив в продажу, этот продукт стал большим разочарованием. Дело в том, что максимальное количество пользователей, с которыми мини-сервер можно было использовать, составляло всего 5.

Как написал на форуме один программист 1С: «До сих пор не понятно, почему 1С выбрала именно 5 подключений! От 4 пользователей проблемы только начинаются, а тут на пяти все заканчивается. Хочешь подключить шестого - доплати еще 50 тыс. Сделали бы хоть на 10 подключений…»

Конечно, мини-сервер тоже нашел своего потребителя. Однако для компаний, где с 1С работают от 5 человек, так и не появилось простого и недорогого решения.

Помимо описанных выше методов ускорения программы, существует еще один, идеально подходящий для сегмента 5 - 15 пользователей, а именно - web-доступ для 1С в файловом режиме.

Решение четвертое. Web-доступ для 1С в файловом режиме

Принцип работы следующий: на компьютере поднимается дополнительная роль web-сервера, на котором происходит публикация ИБ.

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

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

Данный вариант уступает серверу 1С предприятия по скорости работы, но разница эта до 15-20 пользователей визуально практически не заметна. Кстати, для реализации web-сервера можно использовать IIS (для Windows) и Apache (для Linux) и оба этих решения бесплатны!

Несмотря на очевидные преимущества, данный способ оптимизации работы 1С не получил большой популярности.

Не берусь утверждать наверняка, но скорее всего, это связано с двумя причинами:

  • Довольно слабое описание в технической документации
  • Находится на стыке ответственности системного администратора и программиста 1С

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

Ускорим 1С. Дистанционно, быстро и без вашего участия

Мы умеем ускорять 1Ски и при этом не дергать заказчика. Мы вникаем в проблему, делаем свою работу и уходим. Если вам хочется, чтобы программа просто нормально работала - обратитесь к нам. Мы разберемся.

Оставьте заявку - и получите бесплатную консультацию по ускорению программы.

Причины медленной работы 1С. Несколько слов о файловом режиме.

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

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

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

Первоначальный взгляд на потребление ресурсов.

В данной статье мы постараемся ответить на два вопроса:

  1. Правда ли то, что конфигурации на основе управляемого приложения уступают по скорости простым?
  2. Что в первую очередь воздействует на производительность?

Чтобы ответить на поставленные вопросы, мы провели специальное исследование. Для этого нами были взяты две виртуальные машины. Первая управляется Wind о ws S е rv еr 2012 R 2, а второй Wind о ws 8.1. Каждой из названных машин были выделены два ядра (Со re i 5-4670), а также по 2 гигабайта оперативки. Такие показатели являются среднестатистическими для обычного офисного ПК. Сервер поместили на РАИД 0 из двух WD Se . Клиент был на похожем массиве из дисков общего назначения.

Для эксперимента мы взяли различные конфигрурации Бухгалтерии 2.0, выпуска 2.0.64.12. Позже версия была обновлена до 3.0.38.52. Запуски производились на платформе 8.3.5.1443.

Сразу бросается в глаза, что размер информационной базы третьей версии заметно вырастает. Увеличиваются и запросы оперативной памяти:

Рис. 1

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

Тем не менее, база информации 1С требует постоянного обслуживания для корректной работы, как и любая СУБД. Специальный инструмент для этого – Тестирование и исправление информационной базы. Несмотря на название, которое вызывает ассоциации с тем, что этот инструмент создан исключительно для исправления проблем, слабая производительность тоже является проблемой. Оптисизировать БД можно с помощью реструктуризации и реиндексации. Это выглядит следующим образом:

Рис. 2

Применение данных опций привело к тому, что база стала меньше второй версии. Стоит отметить, что и «двойку» тоже ранее не оптимизировали. Кстати, сократилось и потребление ОЗУ.

Рис. 3

Позже мы загрузили новые классификаторы и справочники, создали индексы, провели ряд других необходимых действия. Все это привело к увеличению базы третьей версии. Так, если «двойке» хватало максимум 20 Мегабайт оперативки, то новой редакции нужно уже порядка 500 МБ. Эту величину необходимо учитывать для дальнейшей работы

Сеть

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

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

Рис. 4

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

Рис. 5

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

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

Рис. 6

Посмотрим повнимательнее. 100-мегабитная Третья версия с оптимизированной базой имеет равнозначную скорость со второй версией, при этом «тройка» без оптимизации «тормозит» почти в два раза. При 1 Гбит/с пропорции остаются практически неизменными. Кроме того переход на гигабитную скорость фактически в три раза уменьшает время проведения для двойки и в два раза для тройки.


Рис. 7

Хотя, как ни крути, проблема не в пропускной способности. До оптимизации третья версия уступает второй порядка 20 процентов. Проведение оптимизации позволяет ускорить работу и даже в определенной степени превзойти двойку. После перехода на гигабитную скорость оптимизированная тройка не получает каких-либо «бонусов», а неоптимизированные базы и у двойки работает быстрее. Различия между ними сохраняются минимальными.

Но все-таки, в чем же причина медленной работы 1С? Давайте смотреть дальше!

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

Ранее мы уже увеличивали скорость 1С, благодаря размещению базы на SSD . Дисковая подсистема сервера показывают вполне хорошую производительность, об этом говорят результаты ее измерений во время группового проведения в 2-х базах. Не будем голословными, посмотрите на рисунок ниже:

Рис. 8

Проанализируем результаты: количество операций ввода-вывода составила 913 на единицу времени (1 сек). При этом длина очереди не более 1,84. Неплохо для 2-дискового массива, не правда ли? Таким образом, логично, что для хорошей работы десяти сетевых клиентов в любом режиме подойдут зеркала из простых дисков.

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

1. Скорость загрузки базы

Рис. 9

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

Рис. 10

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

3. Посмотрим на повседневные задачи:

Рис. 11

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

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

Мы уже проводили исследования влияния SSD на скорость работы 1С, которая установлена локально. Сделанные выводы частично применимы и для сетевого режима. Это говорит о том, что 1С использует ресурсы диска для различных задач (включая фоновые и регламентные). Посмотрите на изображение, где показано как 1С обращается к ресурсам диска после загрузки (продолжительность около 40 секунд).

Рис 12

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

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

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

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

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

Рис. 13

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

Сравним результаты с запуском на 2 Гб:

Рис. 14

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

А что будет после уменьшения памяти до 1 Гб?

Рис. 15

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

Это делает даже субъективную работу с двумя открытыми базами медленной и неприятной. К примеру, потребовалось около двадцати секунд, чтобы открыть журнал Реализация товаров и услуг. Дисковая активность (подчеркнуто красным) была крайне высока.

Рис. 16

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

  • Групповое перепроведение в одной из баз
  • Обе базы аналогичны, созданы путем копирования оптимизированной базы. Вот результат:

    Рис. 17

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

    Вывод: малое количество оперативной памяти – вот основная проблема, которая тормозит 1С с новыми конфигурациями. Минимальный необходимый объем оперативки – 2 Гб. И это не учитывая, что скорее всего на Вашем компьютере будет открыт не только 1С, но и многие другие программы, которые также будут «съедать» драгоценную оперативную память.

    Процессор

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

    Рис. 18

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

    Выводы.

    1. Основная причина медленной работы 1С – недостаток оперативной памяти, в связи с чем нагрузка переходит на жесткий диск и частично на процессор.
    2. Частично влияет производительность сети. 100-Мбитный канал может стать серьезным сдерживающим фактором для работы, однако, режим тонкого клиена способен сбалансировать этот недостаток.
    3. Приобретение SSD – решение хорошее, но дорогое. Дешевле заменить диск на более современный того же типа.
    4. Быстрый процессор – вещь хорошая, но в нем нет необходимости для ускорения 1С.)За исключением случаев, когда компьютер используется для «тяжелых» операций.

    Опираясь на проведенные исследования и сделанные выводы, Вы сможете достаточно эффективно решить для себя проблему медленной скорости 1С.

    Ваша «1С» опять тормозит? Теряете время, пока составляется отчет? Надоело пить чай, ожидая обмен данными?

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

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

    Почему «1С» может зависать или тормозить?

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

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

    Даже ошибки при обычных действиях с 1С — тоже могут привести к ее медленной работе.

    Как ускорить 1С?

    Мы действуем так:

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

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

    Фактически существует три метода ускорения 1С:

    • Увеличение аппаратных мощностей.
    • Оптимизация настроек операционной системы и СУБД.
    • Оптимизация кода и алгоритмов в 1С.

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

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

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

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



    Таблица 1 - Конфигурации, на которых проводилось первоначальное тестирование

    Рабочая станция показывает производительность на 155% больше, чем сервер 1С с превышающими характеристиками. Мы начали разбираться, в чем дело и сужать круг поисков.

    Рисунок 1 – Замеры производительности на рабочей стации тестом Гилева

    Первое подозрение было, что тест Гилева неадекватен. Замеры открытия форм, проведения документов, формирования отчетов и т.д инструментами КИП показали, что тест Гилева выдает оценку пропорциональную реальной скорости работы в 1С.

    Количество и частота ОЗУ

    Анализ доступной в интернете информации показал, что многие пишут о зависимости производительности 1С от частоты памяти. Именно от частоты, а не от объема. Решили проверить эту гипотезу, так как у нас на сервере частота ОЗУ 1066 Mhz против 1333 Mhz на рабочей станции, а объем ОЗУ на сервере и так значительно выше. Решили поставить сразу не 1066 Mhz, а 800 Mhz для того, чтобы эффект зависимости производительности от частоты памяти был нагляднее. Результат – производительность упала на 12% и составила 39,37 единиц. На сервер поставили память с частотой 1333 Mhz вместо 1066 Mhz и получили незначительный прирост производительности – около 11%. Производительность составила 19,53 единицы. Соответственно, дело не в памяти, хотя ее частота дает небольшой прирост.

    Рисунок 2 – Замеры производительности на рабочей станции после понижения частоты ОЗУ


    Рисунок 3 – Замеры производительности на сервере после повышения частоты ОЗУ

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

    Следующая гипотеза была связана с дисковой подсистемой. Сразу возникло два предположения:

    • SSD лучше, чем SAS диски, пусть даже они в 10 рейде.
    • iSCSI работает медленно или некорректно.

    Поэтому в рабочую станцию поставили обычный SATA-диск вместо SSD, то же самое сделали и с сервером – базу разместили на локальном SATA-диске. В результате, замеры производительности никак не изменились. Скорее всего, это происходит, поскольку есть достаточное количество ОЗУ и диски практически никак не задействованы при выполнении теста.

    Процессор

    Процессоры на сервере, конечно, мощнее и их два, но частота немного ниже, чем на рабочей станции. Решили проверить влияние частоты процессора на быстродействие: для сервера процессоров с большей частотой под рукой не оказалось, поэтому снизили частоту процессора на рабочей станции. Снизили сразу до 1,6, чтобы корреляция проявлялась ярче. Тест показал, что производительность упала значительно, но даже с процессором 1,6 рабочая станция выдавала почти 28 единиц, что практически в 1,5 раза больше чем на сервере.

    Рисунок 4 – Замеры производительности на рабочей стации с процессором 1,6 Ghz

    Видеокарта

    В интернете встречается информация о том, что на производительность 1С может влиять видеокарта. Мы пробовали использовать интегрированное видео рабочей станции, профессиональный адаптер Nvidia NVIDIA® Quadro® 4000 2 Gb DDR5, старую видеокарту GeForce 16MbSDR. Во время проведения теста Гилева какой-либо значительной разницы не заметили. Возможно, видеокарта все-таки влияет, но в реальных условиях, когда нужно открывать управляемые формы и т.д.

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

    1. Процессор. Тип процессора на рабочей станции лучше подходит 1С.
    2. Чипсет. При прочих равных условиях наша рабочая станция имеет более новый чипсет, возможно, дело в нем.

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

    Этап 1. Настройка системы

    Для начала выполним следующие настройки в BIOS и операционной системе:

    1. В BIOS сервера отключаем все настройки по экономии электропитания процессора.
    2. Выбираем в операционной системе план «Максимальная производительность».
    3. Процессор также настраиваем на максимальную производительность. Это можно сделать с помощью утилиты PowerSchemeEd.

    Этап 2. Настройка SQL сервера и сервера 1С:Предприятия

    Вносим следующие изменения в настройки сервера СУБД и 1С:Предприятия.

    1. Настройка протокола Shared Memory:

      • Shared Memory включится только на платформе начиная с 1С 8.2.17, на более ранних релизах включится Named Pipe – несколько уступающий в скорости работы. Данная технология работает только если службы 1С и MSSQL установлены на одном физическом или виртуальном сервере.
    2. Рекомендуется перевести службу 1С в режим отладки, как не парадоксально это дает прирост производительности. По умолчанию отладка на сервере выключена.
    3. Настройка SQL сервера:

      • Нам нужен только сервер, остальные службы, которые к нему относятся и, возможно, кто-то ими пользуется, только тормозят работу. Останавливаем и отключаем такие службы как: FullText Search (у 1С собственный механизм полнотекстового поиска), Integration Services и т.д.
      • Устанавливаем максимально отведенное серверу количество памяти. Это необходимо для того, чтобы sql-сервер рассчитывал на этот объем и чистил память заблаговременно.
      • Устанавливаем максимальное количество потоков (Maximum worker threads) и выставляем повышенный приоритет сервера (Boost priority).

    Этап 3. Настройка рабочей базы данных

    После того, как сервер СУБД и 1С:Предприятия оптимизированы, переходим к настройкам баз. Если база еще не развернута из.dt файла, и вы знаете примерный ее размер, то первичному файлу размер инициализации лучше сразу указать «>=» размера базы, но это дело вкуса, он все равно вырастет при развертке. А вот Автоувеличение размера надо обязательно указать: примерно по 200 МБ на базу и по 50 МБ на лог, т.к. значения по умолчанию – рост по 1МБ и по 10% очень сильно тормозят работу сервера, когда ему при каждой 3й транзакции надо файл увеличивать. Также хранение файла базы и файла лога лучше указать на разных физических дисках или RAID группах, если используется RAID массив, и ограничить разрастание лога. Рекомендуется выносить файл Tempdb на высокоскоростной массив, так как СУБД к нему довольно часто обращается.

    Этап 4. Настройка регламентных заданий

    Регламентные задания создаются довольно просто с помощью Maintenance Plan в разделе Management, используя графические инструменты, поэтому подробно описывать, как это делается не будем. Остановимся на том, какие операции необходимо выполнять для повышения производительности.

    • Дефрагментацию индексов и обновление статистики нужно производить ежедневно, т.к. если фрагментированность индексов > 25%, это резко снижает производительность сервера.
    • Дефрагментация и обновление статистики - делается быстро и не требует отключения пользователей. Также рекомендуется делать ежедневно.
    • Полная реиндексация – делается с блокировкой БД, рекомендуется делать хотя бы раз в неделю. Естественно, после полной переиндексации сразу же делается дефрагментация индексов и обновление статистики.

    В итоге, с помощью тонких настроек системы, SQL сервера и рабочей базы, нам удалось повысить производительность на 46%. Замеры были проведены с помощью инструмента 1С КИП и с помощью теста Гилева. Последний показал 25,6 единиц против 17,53 которые были изначально.

    Краткий вывод

    1. Производительность 1С не сильно зависит от частоты ОЗУ. При достижении достаточного ее объема дальнейшее наращивание памяти не имеет смысла, так как не приводит к увеличению производительности.
    2. Производительность 1С не зависит от видеокарты.
    3. Производительность 1С не зависит от дисковой подсистемы при условии, что не происходит превышения очереди чтения или записи дисков. Если установлены SATA диски и у них не превышена очередь, то установка SSD не приведет к повышению производительности.
    4. Производительность довольно сильно зависит от частоты процессора.
    5. При грамотной настройке операционной системы и MSSQL-сервера возможно добиться увеличения производительности 1С на 40-50% без каких-либо материальных затрат.

    ВНИМАНИЕ! Очень важный момент! Все замеры были выполнены на тестовой базе с использованием теста Гилева и инструментов 1С КИП. Поведение реальной базы с реальными пользователями может отличаться от полученных результатов. Например, в тестовой базе мы не обнаружили зависимости производительности от видеокарты и объема ОЗУ. Данные выводы достаточно сомнительны и в реальных условиях эти факторы могут оказывать существенное влияние на производительность. При работе с конфигурациями, использующими управляемые формы, видеокарта важна и мощный графический процессор ускоряет работу с точки зрения прорисовки интерфейса программы, визуально это проявляется в более быстрой работе 1С.

    Ваша 1С работает медленно? Закажите ИТ-обслуживание компьютеров и серверов специалистами компании EFSOL с многолетним стажем или перенесите свою 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С для холдингов и крупных компаний – тема для отдельной, большой статьи, поэтому следите за обновлением материалов на нашем сайте.