1с розница 2.2 медленно работает по сети. Советы по автоматизации. Сокращения физического объема баз данных

  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С в аренду без тормозов, с выбором конфигурации сервера и операционной системы, сервер Вы можете сконфигурировать онлайн на сайте нашего партнера, по ссылке https://1cloud.ru раздел Услуги , раздел Виртуальный сервер .

Что же делать и как это победить, и так по порядку:

Клиенты очень медленно работают с серверной версией 1С

Кроме медленной работы 1С, так же наблюдается медленная работа с сетевыми файлами. Проблема встречается при обычной работе и при RDP

для решения этого, после каждой установки Семерки или 2008-го сервера всегда запускаю

netsh int tcp set global autotuning=disabled

netsh int tcp set global autotuninglevel=disabled

netsh int tcp set global rss=disabled chimney=disabled

и сеть работает без проблем

иногда оптимальным является:

netsh interface tcp set global autotuning= HighlyRestricted

вот как выглядит установка

Настроить брандмауэр Антивируса или Windows

Как настроить брандмауэр Антивируса или Windows для работы сервера 1С (связка из Сервера 1С: Предприятие и MS SQL 2008, например).

Добавьте правила:

  • Если сервер SQL принимает подключения на стандартный порт TCP 1433, то разрешаем его.
  • Если порт SQL динамический, то необходимо разрешить подключения к приложению %ProgramFiles%\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Binn\sqlservr.exe.
  • Сервер 1С работает на портах 1541, кластер 1540 и диапазоне 1560-1591. По совершенно мистическим причинам иногда такой список открытых портов все равно не позволяет выполнять подключения к серверу. Чтобы заработало наверняка, разрешите диапазон 1540-1591.

Настройка производительности Сервера / Компьютера

Для того чтобы компьютер работал с максимальной производительностью - нужно настроить его на это:

1. Настройки BIOS

  • В BIOS сервера отключаем все настройки по экономии электропитания процессора.
  • Если есть «C1E» & обязательно ОТКЛЮЧАЕМ!!
  • Для некоторых не очень параллельных задач также рекомендуется выключить гипертрейдинг в биосе
  • В некоторых случаях (особенно для HP!) надо зайти в BIOS сервера, и ВЫКЛЮЧИТЬ там пункты, в названии которых есть EIST, Intel SpeedStep и C1E.
  • Взамен надо там же найти пункты, связанные с процессором, в названии которых есть Turbo Boost, и ВКЛЮЧИТЬ их.
  • Если в биосе есть общее указание режима энергосбережения & включить его в режим максимальной производительности (он ещё может называться «агрессивный»)

2. Настройки схемы в операционной системе - Высокая производительность

Сервера с архитектурой Intel Sandy Bridge умеют динамически менять частоты процессора.

Иногда решением проблемы медленной работы сервера 1С это устаревшее или сломанное оборудование, в этом случае мы предлагаем клиентам сервер для 1С в аренду без тормозов, с выбором конфигурации сервера и операционной системы, его Вы можете на сайте нашего партнера, по ссылке https://1cloud.ru раздел Услуги, раздел Виртуальный сервер.

Если у Вас есть вопросы пожалуйста обращайтесь:

  • звоните по телефону +7-812-385-55-66 в Санкт-Петербурге
  • пишите на адрес
  • оставляйте заявку у нас на сайте на странице "Онлайн заявка"

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

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

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

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

Почему тормозит 1С?

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

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

Внешние причины медленной работы 1С

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

Аппаратный фактор

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

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

Процессоры бывают с разным количеством ядер и разной тактовой частотой. Количество ядер позволяет обрабатывать несколько процессов одновременно, а частота отвечает за скорость обработки процессов. Чем выше оба показателя – тем лучше.

Оперативная память позволяет хранить данные во временной памяти, позволяя программам работать с ними. Чем больше объем оперативной памяти – тем больше данных могут обрабатываться программой 1С. Увеличение оперативной памяти положительно сказывается на всех ступенях работы с 1С – от загрузки программы до выгрузки отчётов. Однако, положительное влияние увеличения оперативной памяти чувствуется на малых её объемах. При смене 2 Гб на 4 Гб разница чувствуется сильно, однако если увеличить память с 16 Гб до 32 Гб, особого прироста производительности Вы не почувствуете (информация не актуальна для серверов 1С).

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

Какие бы работы не проводились по ускорению 1С, если у Вас мало оперативной памяти (1 Гб) или слабенький процессор (2200 ГГц), навряд ли Вы добьётесь ощутимого прироста скорости. Стоит подумать о модернизации компьютера.

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

Операционный фактор

К операционным факторам можно отнести вид операционной системы и настройки электропитания.

Самыми распространёнными операционными системами являются 32- и 64-битные. Последние системы (Windows 8,10) в большинстве своём 64-битные. 32-битные системы имеют некоторые ограничения, главное из которых – программное ограничение максимально доступного объема оперативной памяти – примерно 3,5 Гб. Даже если физически у вас будет установлено 8 Гб, максимум, которым Вы сможете воспользоваться – 3,5 Гб.

Настройка электропитания подразумевает выбор схемы работы «Максимальная производительность». В разных операционных системах настройка электропитания находится в разных местах, в Windows Вы всегда можете найти её на панели управления.

Программный фактор

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

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

Внутренние причины медленной работы 1С

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

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

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

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

Клиент-серверные решения 1С

Для компаний, использующих сервер 1С, повышение производительности связано с улучшением сервера (главного компьютера) и его грамотной настройкой. Клиентские компьютеры могут обладать минимальными требованиями для запуска 1С, потому что все вычисления будут производиться на сервере. Однако порой даже мощный сервер не справится с одновременной работой 5-10 пользователей, если не произвести грамотную настройку сервера 1С.

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

Выводы

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

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

Ускорьте 1С прямо сейчас!

Основная цель написания статьи — чтобы не повторять очевидные нюансы тем администраторам (и программистам), которые еще не набрали опыта с 1С.

Вторичная цель, если у меня будут какие-то недочеты, — на Инфостарте мне это укажут быстрее всего.

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

На Инфостарте подобные статьи есть, в соответствующих разделх буду ставить на них ссылки (если пропущу что-то - просьба подсказать в комментариях, добавлю). Итак, предположим у вас тормозит 1С. Как диагностировать проблему, и как понять кто виноват, администратор или программист?

Исходные данные:

Тестируемый компьютер, основной подопытный кролик: HP DL180G6, в комплектации 2*Xeon 5650, 32 Gb, Intel 362i , Win 2008 r2. Для сравнения, сопоставимые результаты в однопоточном тесте показывает Core i3-2100. Оборудование специально взял не самое новое, на современном оборудовании результаты заметно лучше.

Для тестирования разнесенных серверов 1С и SQL, сервер SQL: IBM System 3650 x4, 2*Xeon E5-2630, 32 Gb, Intel 350, Win 2008 r2.

Для проверки 10 Gbit сети использовались Intel 520-DA2 адаптеры.

Файловая версия . (база лежит на сервере в расшаренной папке, клиенты подключаются по сети, протокол CIFS/SMB). Алгоритм по шагам:

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

Подразумевается, что даже для старых компьютеров 10 летней давности (Pentium на 775 socket ) время от нажатия на ярлык 1С:Предприятие до появления окна базы должно пройти меньше минуты. (Celeron = медленная работа).

Если у Вас компьютер хуже, чем пентиум на 775 socket с 1 гб оперативной памяти, то я Вам сочувствую, и комфортной работы на 1С 8.2 в файловой версии Вам будет добиться тяжело. Задумайтесь или об апгрейде (давно пора), или о переходе на терминальный (или web, в случае тонких клиентов и управляемых форм) сервер.

Если компьютер не хуже, то можно пинать администратора. Как минимум — проверить работу сети, антивируса и драйвера защиты HASP.

Если тест Гилева на этом этапе показал 30 "попугаев" и выше, но рабочая база 1С все равно работает медленно - вопросы уже к программисту.

1. Для ориентира, сколько же может "выжать" клиентский компьютер, проверяем работу только этого компьютера, без сети. Тестовую базу ставим на локальный компьютер (на очень быстрый диск). Если на клиентском компьютере нет нормального ССД, то создается рамдиск. Пока, самое простое и бесплатное — Ramdisk enterprise .

Для тестирования версии 8.2 вполне достаточно 256 мб рамдиска, и! Самое главное. После перезагрузки компьютера, с работающим рамдиском, на нем должно быть свободно 100-200 мб. Соответственно, без рамдиска, для нормальной работы свободной памяти должно быть 300-400 мб.

Для тестирования версии 8.3 рамдиска 256 мб хватит, но свободной оперативной памяти надо больше.

При тестировании нужно смотреть на загрузку процессора. В случае, близком к идеальному(рамдиск), локальная файловая 1с при работе загружает 1 ядро процессора. Соответственно, если при тестировании у вас ядро процессора загружено не полностью — ищите слабые места. Немного эмоционально, но в целом корректно, влияние процессора на работу 1С описано . Просто для ориентира, даже на современных Core i3 с высокой частотой вполне реальны цифры 70-80.

Наиболее часто встречающиеся ошибки на этом этапе.

а) Неправильно настроенный антивирус. Антивирусов много, настройки для каждого свои, скажу лишь то, что при грамотной настройке ни веб, ни касперский 1С не мешают. При настройках "по умолчанию" - может отниматься примерно 3-5 попугаев (10-15%).

б) Режим производительности. Почему-то на это мало кто обращает внимания, а эффект - самый весомый. Если нужна скорость - то делать это обязательно, и на клиентских и на серверных компьютерах. (Хорошее описание у Гилева . Единственный нюанс, на некоторых материнских платах если выключить Intel SpeedStep то нельзя включать TurboBoost).

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

Включать режим производительности можно (и желательно) в двух местах:

Через BIOS. Отключить режимы C1, C1E, Intel С-state (C2, C3,C4). В разных биосах они называтся по разному, но смысл один. Искать долго, требуется перезагрузка, но если сделал один раз - потом можно забыть. Если в BIOS все сделать правильно, то скорости добавится. На некоторых материнских платах настройками BIOS можно сделать так, что режим производительности Windows роли играть не будет. (Примеры настройки BIOS у Гилева). Эти настройки в основном касаются серверных процессоров или "продвинутых" BIOS, если Вы такое у себя не нашли, и у вас НЕ Xeon - ничего страшного.

Панель управления - Электропитание - Высокая производительность. Минус - если ТО комптютера давно не проводилось, он будет сильнее гудеть вентилятором, будет больше греться и потреблять больше энергии. Это - плата за производительность.

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

Это - настройки по умолчанию.

В BIOS C-state включены ,

режим энергопотребления сбалансированный


В BIOS C-state включены , режим высокой производительности

Для Pentium и Core на этом можно остановиться,

из Xeon еще можно выжать немного "попугайчиков"


В BIOS C-state выключены , режим высокой производительности.

Если не использовать Turbo boost - именно так должен выглядеть

сервер, настроенный на производительность


А теперь цифры. Напомню: Intel Xeon 5650, ramdisk. В первом случае тест показывает 23.26, в последнем - 49.5. Разница - почти двухкратная. Цифры могут варьироваться, но соотношение остается практически таким же для Intel Core.

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

в) Turbo Boost. Сначала надо понять, поддерживает ли Ваш процессор эту функцию, например . Если поддерживает, то можно еще вполне легально получить немного производительности. (вопросы разгона по частоте, особенно серверов, касаться не хочу, делайте это на свой страх и риск. Но соглашусь с тем, что повышение Bus speed со 133 до 166 дает очень ощутимый прирост как скорости, так и тепловыделения)

Как включать turbo boost написано, например, . Но! Для 1С есть некоторые нюансы(не самые очевидные). Сложность в том, что максимальный эффект от turbo boost проявляется тогда, когда включены C-state. И получается примерно такая картинка:

Обратите внимание, что множитель - максимальный, частота Core speed - красивейшая, производительность - высокая. Но что же будет в результате с 1с?

Множитель

Core speed (частота), GHz

CPU-Z Single Thread

Тест Гилева Ramdisk

файловый вариант

Тест Гилева Ramdisk

клиент-сервер

Без Turbo boost

C-state off, Turbo boost

53.19

40,32

C-state on, Turbo boost

1080

53,13

23,04

А в итоге получается, что по тестам производительности ЦПУ вариант с множителем 23 впереди, по тестам Гилева в файловой версии - производительность с множителем 22 и 23 одинаковая, а вот в клиент-серверной - вариант с множителем 23 ужас ужас ужас (даже, если C-state выставить на уровень 7, то все равно медленнее, чем с выключенным C-state). Поэтому рекомендация, проверьте оба варианта у себя, и выберите из них лучший. В любом случае, разница 49,5 и 53 попугая - достаточно значительная, тем более это без особых усилий.

Вывод - turbo boost включать обязательно. Напомню, что недостаточно включить пункт Turbo boost в биосе, надо еще посмотреть и другие настройки (BIOS: QPI L0s, L1 - disable, demand scrubbing - disable, Intel SpeedStep - enable, Turbo boost - enable. Панель управления - Электропитание - Высокая производительность). И я бы все-таки (даже для файловой версии) остановился на варианте, где c-state выключен, хоть там множитель и меньше. Получится как-то так...

Достаточно спорным моментом является частота памяти. Например вот частота памяти показывается как очень сильно влияющая. Мои же тесты - такой зависимости не выявили. Я не буду сравнивать DDR 2/3/4, я покажу результаты изменения частоты в пределах одной линейки. Память одна и та же, но в биосе принудительно ставим меньшие частоты.




И результаты тестирования. 1С 8.2.19.83, для файлового варианта локальный рамдиск, для клиент-серверного 1С и SQL на одном компьютере, Shared memory. Turbo boost в обоих вариантах выключен. 8.3 показывает сопоставимые результаты.

Разница - в пределах погрешности измерений. Я специально вытащил скрины CPU-Z чтобы показать, что со сменой частоты меняются и другие параметры, те же CAS Latency и RAS to CAS Delay, что нивелирует изменение частоты. Разница будет тогда, когда физически будут меняться модули памяти, с более медленных на более быстрые, но и там цифры не особо значительные.

2. Когда с процессором и памятью клиентского компьютера разобрались, переходим к следующему очень важному месту - сети. Про тюнинг сети написаны многие тома книг, есть статьи на Инфостарте ( , и другие), здесь я на эту тему заострять внимание не буду. Перед началом тестирования 1С просьба убедиться, что iperf между двумя компьютерами показывает всю полосу (для 1 гбит карточек - ну хотя бы 850 мбит, а лучше 950-980), что выполнены советы Гилева . Потом - самой простой проверкой работы будет, как это ни странно, копирование одного большого файла (5-10 гигабайт) по сети. Косвенным признаком нормальной работы на сети в 1 гбит будет средняя скорость копирования 100 мб/сек, хорошей работы — 120 мб/сек. Хочу обратить внимание, что слабым местом (в том числе) может быть и загруженность процессора. SMB протокол на Linux достаточно плохо параллелится, и во время работы он вполне спокойно может «скушать» одно ядро процессора, и больше не потреблять.

И еще. С настройками по умолчанию windows клиент лучше всего работает с windows server (или даже windows рабочая станция) и протоколом SMB/CIFS, linux клиент (debian, ubuntu остальные не смотрел) лучше работает с linux и NFS (с SMB тоже работает, но на NFS попугаи выше). То, что при линейном копировании вин-линукс сервер на нфс копируется в один поток быстрее, еще ни о чем не говорит. Тюнинг debian для 1С - тема отдельной статьи, я к ней еще не готов, хотя могу сказать, что в файловой версии получал даже немного бОльшую производительность, чем Win вариант на этом же оборудовании, но с postgres при пользователях свыше 50 у меня пока еще все очень плохо.

Самое главное , о чем знают "обжегшиеся" администраторы, но не учитывают начинающие. Есть очень много способов задать путь к базе 1с. Можно сделать \\server\share, можно \\192.168.0.1\share, можно net use z: \\192.168.0.1\share (и в некоторых случаях такой способ тоже сработает, но далеко не всегда) и потом указывать диск Z. Вроде бы все эти пути указывают на одно и то же место, но для 1С есть только один способ, достаточно стабильно дающий нормальную производительность. Так вот, правильно делать надо так:

В командной строке (или в политиках, или как Вам удобно) - делаете net use DriveLetter: \\server\share. Пример: net use m: \\server\bases . Я специально подчеркиваю, НЕ IP адрес, а именно имя сервера. Если сервер по имени не виден - добавьте его в dns на сервере, или локально в файл hosts. Но обращение должно быть по имени. Соответственно - в пути к базе обращаться к этому диску (см картинку).

А теперь я на цифрах покажу, почему именно такой совет. Исходные данные: Карты Intel X520-DA2, Intel 362, Intel 350, Realtek 8169. ОС Win 2008 R2, Win 7, Debian 8. Драйвера последние, обновления применены. Перед тестированием я убедился, что Iperf дает полную полосу (кроме 10 гбит карточек, там получилось только 7.2 Gbit выжать, позже посмотрю почему, тестовый сервер еще не настроен как надо). Диски разные, но везде SSD(специально вставил одиночный диск для тестирования, больше ничем не нагружен) или рейд из SSD. Скорость 100 Mbit получена путем ограничения в настройках адаптера Intel 362. Разницы между 1 Gbit медь Intel 350 и 1 Gbit оптика Intel X520-DA2 (полученной путем ограничения скорости адаптера) не обнаружено. Максимальная производительность, турбобуст выключен (просто для сопоставимости результатов, турбобуст для хороших результатов добавляет чуть меньше 10%, для плохих - вообще может никак не сказаться). Версии 1С 8.2.19.86, 8.3.6.2076. Цифры привожу не все, а только самые интересные, чтобы было с чем сравнивать.

Win 2008 - Win 2008

обращение по ip адресу

Win 2008 - Win 2008

Обращение по имени

Win 2008 - Win 2008

Обращение по ip адресу

Win 2008 - Win 2008

Обращение по имени

Win 2008 - Win 7

Обращение по имени

Win 2008 - Debian

Обращение по имени

Win 2008 - Win 2008

Обращение по ip адресу

Win 2008 - Win 2008

Обращение по имени

11,20 26,18 15,20 43,86 40,65 37,04 16,23 44,64
1С 8.2 11,29 26,18 15,29 43,10 40,65 36,76 15,11 44,10
8.2.19.83 12,15 25,77 15,15 43,10 14,97 42,74
6,13 34,25 14,98 43,10 39,37 37,59 15,53 42,74
1С 8.3 6,61 33,33 15,58 43,86 40,00 37,88 16,23 42,74
8.3.6.2076 33,78 15,53 43,48 39,37 37,59 42,74

Выводы (из таблицы, и из личного опыта. Касается только файловой версии):

По сети можно получить вполне нормальные цифры для работы, если эту сеть нормально настроить, и правильно прописать путь в 1С. Даже первые Core i3 вполне могут давать 40+ попугаев, что достаточно неплохо, причем это не только попугаи, в реальной работе разница тоже заметна. Но! ограничением при работе нескольких (больше 10) пользователей уже будет выступать не сеть, тут 1 Гбит еще хватит, а блокировки при многопользовательской работе (Гилев).

Платформа 1C 8.3 в разы требовательнее к грамотной настройке сети. Базовые настройки - см Гилев , но учтите, что влиять может все. Видел ускорение от того, что деинсталлировали (а не просто отключали) антивирус, от убирания протоколов типа FCoE, от смены драйверов на более старую, но microsoft certified версию (особенно касается дешевых карточек типа асусов и длинков), от убирания второй сетевой карточки из сервера. Очень много вариантов, настраивайте сеть вдумчиво. Вполне может быть ситуация, когда платформа 8.2 дает приемленые цифры, а 8.3 - в два или даже больше раз меньше. Попробуйте поиграться с версиями платформы 8.3, иногда получается очень большой эффект.

1С 8.3.6.2076 (может и более поздние, точную версию еще не искал) по сети все-таки настроить попроще, чем 8.3.7.2008. Добиться от 8.3.7.2008 нормальной работы по сети (в сопоставимых попугаях) получилось всего несколько раз, повторить для более общего случая не смог. Сильно не разбирался, но судя по портянкам от Process Explorer там запись не так идет, как в 8.3.6.

Несмотря на то, что при работе на 100Мбит сети график ее загруженности небольшой, (можно сказать что сеть свободная), скорость работы все равно гораздо меньше, чем на 1 гбит. Причина - задержки (latency) сети.

При прочих равных условиях (хорошо работающей сети) для 1С 8.2 соединение Intel - Realtek медленнее на 10%, чем Intel-Intel. А вот realtek-realtek вообще могут дать резкие проседания на ровном месте. Поэтому, если есть деньги - лучше везде держать сетевые карточки Intel, если денег нет - то Intel ставить только на сервер (ваш К.О.). Да и инструкций по тюнингу интелевых сетевых карточек в разы больше.

Настройки антивирусов по умолчанию (на примере drweb 10 версии) отнимают около 8-10% попугаев. Если настроить как надо (разрешить процессу 1cv8 делать все, хоть это и не безопасно) - скорость такая же, как и без антивируса.

Линуксовым гуру НЕ читать. Сервер с samba это здорово и бесплатно, но если на сервер поставить Win XP или Win7 (а еще лучше - серверные ОС), то в файловой версии 1с будет работать быстрее. Да, и samba и стек протоколов и настройки сети и многое многое другое в debian/ubuntu хорошо тюнингуется, но делать это рекомендуется специалистам. Нет смысла ставить линукс с настройками по умолчанию и потом говорить, что он медленно работает.

Достаточно неплохо проверять работу дисков, подключенных через net use, с помощью fio . По крайней мере будет понятно, или это проблемы с платформой 1С, или с сетью/диском.

Для однопользовательского варианта не могу придумать тесты (или ситуацию) ,где была бы видна разница между 1Гбит и 10 Гбит. Единственное, где 10Гбит для файловой версии дал результат лучше - это подключение дисков по iSCSI, но это тема отдельной статьи. Все-таки считаю, что для файловой версии 1 Гбит карточек достаточно.

Почему при 100 Мбит сети 8.3 работает заметно быстрее 8.2 - не понимаю, но факт имел место быть. Все остальное оборудование, все остальные настройки абсолютно одинаковые, просто в одном случае тестируется 8.2, а в другом - 8.3.

Не тюнингованный NFS win - win или win-lin дает 6 попугаев, в таблицу включать не стал. После тюнинга 25 получил, но нестабильно (разбег в измерениях больше 2 единиц). Пока не могу дать рекомендации по использованию windows и NFS протокола.

После всех настроек и проверок запускаем опять тест с клиентского компьютера, радуемся улучшившемуся результату (если получилось). Если результат улучшился, попугаев стало больше 30(а особенно больше 40), пользователей одновременно работает меньше 10 а рабочая база все равно тормозит - практически однозначно проблемы программиста (или Вы уже достигли пика возможностей файловой версии).

Терминальный сервер . (база лежит на сервере, клиенты подключаются по сети, протокол RDP). Алгоритм по шагам:

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

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

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

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

Для примера, проверил работу теста Гилева с разными вариантами дисков. Диски ставил из того, что было под рукой, просто тенденцию показать. Разница между 8.3.6.2076 и 8.3.7.2008 небольшая(в варианте Ramdisk Turbo boost 8.3.6 выдает 56.18 а 8.3.7.2008 выдает 55.56, в остальных тестах разница еще меньше). Энергопотребление - максимальная производительность, turbo boost отключен (если не сказано иное).

Raid 10 4x SATA 7200

ATA ST31500341AS

Raid 10 4x SAS 10k

Raid 10 4x SAS 15k

Одиночный SSD

Ramdisk

Включен кэш

RAID контроллера

21,74 28,09 32,47 49,02 50,51 53,76 49,02
1С 8.2 21,65 28,57 32,05 48,54 49,02 53,19
8.2.19.83 21,65 28,41 31,45 48,54 49,50 53,19
33,33 42,74 45,05 51,55 52,08 55,56 51,55
1С 8.3 33,46 42,02 45,05 51,02 52,08 54,95
8.3.7.2008 35,46 43,01 44,64 51,55 52,08 56,18

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

Для платформы 8.2 разница в производительности между SATA и SSD вариантами - более чем в два раза. Это не опечатка. Если во время теста на САТА дисках смотреть на монитор производительности. то там явно видно "Активное время работы диска (в%)" 80-95. Да, если включить кэш самих дисков на запись скорость вырастет до 35, если включить кэш рейд контроллера - до 49 (независимо от того, какие диски тестируются в данный момент). Но это - синтетические попугаи кэша, в реальной работе при больших базах никогда не будет 100% write cache hit ratio.

Скорости даже дешевых ССД (я тестировал на Agility 3) вполне хватает для работы файловой версии. Ресурс записи - другое дело, тут смотреть надо в каждом конкретном случае, понятно, что у Intel 3700 он будет на порядок выше, но там и цена соответствующая. И да, я понимаю, что при тестировании SSD диска я тоже тестирую в бОльшей степени кэш этого диска, реальные результаты будут меньше.

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

Основные плюсы ССД дисков для файлового варианта появятся тогда, когда будет много баз, и в каждой по несколько пользователей. Если баз 1-2, и пользователей в районе 10, то и SAS дисков хватит. (но в любом случае - смотреть на загрузку этих дисков, хотя бы через perfmon).

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

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

Если же и тест Гилева показываем маленькие цифры, и у вас и процессор с высокой частотой, и диски быстрые, то вот тут администратору надо брать как минимум perfmon, причем с записью всех результатов куда-нибудь, и смотреть, наблюдать, делать выводы. Однозначных советов не будет.

Клиент-серверный вариант .

Тесты проводил только на 8.2, т.к. на 8.3 все достаточно серьезно зависит от версии.

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

SQL: Xeon E5-2630

SQL: Xeon E5-2630

Fibre channel - SSD

SQL: Xeon E5-2630

Fibre channel - SAS

SQL: Xeon E5-2630

Local SSD

SQL: Xeon E5-2630

Fibre channel - SSD

SQL: Xeon E5-2630

Local SSD

1С: Xeon 5650 =

1С: Xeon 5650 =

Shared memory

1С: Xeon 5650 =

1С: Xeon 5650 =

1С: Xeon 5650 =

16,78 18,23 16,84 28,57 27,78 32,05 34,72 36,50 23,26 40,65 39.37
1С 8.2 17,12 17,06 14,53 29,41 28,41 31,45 34,97 36,23 23,81 40,32 39.06
16,72 16,89 13,44 29,76 28,57 32,05 34,97 36,23 23,26 40,32 39.06

Вроде все интересные варианты рассмотрел,если что-то интересует еще - пишите в комментария, постараюсь сделать.

САС на СХД работает медленнее, чем локальные ССД, даже несмотря на то, что у СХД большие размеры кэша. ССД и локальные и на СХД для теста Гилева работают с сопоставимой скоростью. Какой-то стандартный многопоточный тест (не только записи, а всего оборудования) кроме нагрузочного 1С из ЦУП я не знаю.

Смена сервера 1С с 5520 на 5650 дала практически удвоение производительности. Да, конфигурации серверов не совпадают полностью, но тенденцию показывает (ничего удивительного).

Увеличение частоты на сервере SQL конечно дает эффект, но не такой, как на сервере 1С, MS SQL сервер отлично умеет (если его об этом попросить) использовать многоядерность и свободную память.

Смена сети между 1С и SQL с 1 гбит на 10 гбит дает примерно 10% попугаев. Ожидал большего.

Включение Shared memory эффект все-таки дает, хоть и не 15%, как в описано. Делать обязательно, благо это быстро и просто. Если кто-то при установке дал серверу SQL именованный инстанс, то для работы 1С имя сервера надо указывать не FQDN (будет работать tcp/ip), не через localhost или просто ServerName, а через ServerName\InstanceName, например zz-test\zztest. (Иначе будет ошибка СУБД: Microsoft SQL Server Native Client 10.0: Поставщик общей памяти: Не найдена библиотека общей памяти, использующаяся для установки соединения с SQL Server 2000 . HRESULT=80004005, HRESULT=80004005, HRESULT=80004005, SQLSrvr: SQLSTATE=08001, state=1, Severity=10, native=126, line=0).

Для пользователей меньше 100 единственный смысл для разнесения на два отдельные сервера - это лицензия на Win 2008 Std (и более старые версии), которая поддерживает только 32 Гб ОЗУ. Во всех других случаях - 1С и SQL однозначно надо ставить на один сервер и давать ему побольше (хотя бы 64 Гб) памяти. Давать MS SQL меньше 24-28 Гб ОЗУ - неоправданная жадность (если Вы думате, что у Вас этой памяти ему хватает и все нормально работает - может Вам и файловой версии 1С бы хватило?)

Насколько хуже работает связка 1С и SQL в виртуальной машине - тема отдельной статьи (подсказка - заметно хуже). Даже в Hyper-V все не так однозначно...

Сбалансированный режим производительности - это плохо. Результаты вполне кореллируют с файловой версией.

В многих источниках написано, что отладочный режим (ragent.exe -debug) дает сильное понижение производительности. Ну понижает, да, но 2-3% я бы не назвал значительным эффектом.

Причины медленной работы 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С.