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

Производительность 1C складывается из суммы показателей производительности различных компонентов инфраструктуры, на которой развернута система. Это следующие компоненты:
Сервер базы данных — основа любой системы. При оценке его работы необходимо обращать внимание на
Для оптимизации работы сервера СУБД необходимо обращать внимание на
Необходимо обращать внимание на
Конфигурация — это то, с чем непосредственно работают пользователи и что правят разработчики. С точки зрения влияния на производительность необходимо обращать внимание на
Есть разные инструменты, с помощью которых можно измерить скорость работы конфигурации 1С. Например, тест Гилева, APDEX, внутренние инструменты 1С. Но надо понимать, что любой тест — это синтетика. Авторы вкладывают в тест определенные параметры.
Например, тест Гилева содержит фиксированный набор фиксированных операций, всегда в одинаковом количестве, и на каждой системе этот тест запускается абсолютно одинаково. Однако каждая конкретная система содержит и другие операции, которые могут микшироваться в разных пропорциях. Поэтому если у вас тест Гилева показал крутой результат, а на другой системе — результат похуже, это не обязательно означает, что эти системы действительно работают по-разному.
Внутренние тесты в 1С более приближены к реальности, а самый хороший, но самый дорогой тест — это роботы. Специалисты могут проанализировать работу вашей системы, выявить наиболее часто выполняемые операции и написать робота, который будет повторять действия именно так, как это происходит в вашей системе. Результаты такого теста будут максимально приближены к вашей конфигурации. Однако и этот тест останется синтетикой. В конце концов, единственный эффективный тест – это реальная нагрузка, которую создают пользователи системы.
Бывают случаи, когда ограничения на производительность накладывает сервер лицензирования, потому что он размещен далеко, например, за VPN с большим временем отклика, а 1C любит часто проверять лицензию. Соответственно, необходимо обращать внимание на
Администраторы делают больше всего ошибок именно здесь. Если правила использования сервера СУБД и сервера 1С все более-менее понимают, то терминал часто пытаются установить на одну машину, выдав ей огромное количество CPU и огромный объем памяти. Это делать не стоит, учитывая контекстные переключения и количество сессий. Процессору очень сложно работать с большим числом одновременных сессий.
Необходимо обращать внимание на
Необходимо обязательно следить за тем, чтобы у пользователя было комфортное и быстрое рабочее место без лишнего ПО, и антивирус не съедал все ресурсы процессора, а также чтобы было стабильное подключение. Необходимо обращать внимание на
Необходимо обращать внимание на
Мы рассмотрели различные компоненты системы и их влияние на общую производительность работы 1С. Ответим теперь на вопрос: как заставить 1С работать быстрее?
Есть два основных сценария – добавление ресурсов и адаптация архитектуры системы.

Добавление ресурсов прекрасно работает на старте. Если система только начинает расти, а пользователей мало, можно увеличить частоту процессора, добавить количество ядер, поставить более быстрые диски и до поры до времени все будет работать хорошо. Но ресурсы заканчиваются, и вы столкнетесь с тем, что нужно менять оборудование.
Поэтому в определенный момент стоит задуматься об адаптации архитектуры системы под рост. В этом в первую очередь вам поможет мониторинг, который позволяет видеть динамику. После этого можно думать об изменении всех тех компонентов, которые мы рассмотрели: добавлять сервера, разграничивать роли, разносить данные, ускорять диски и т. д.
Отметим, что в облаке можно все это сделать очень быстро и эффективно, не дожидаясь нового оборудования.
Адаптация архитектуры – гораздо более гибкий способ, чем добавление ресурсов. Основное преимущество этого подхода — практически неограниченное горизонтальное расширение. Ограничением будет служить только размер облака и дата-центра.
Влияет ли модель процессора на производительность базы данных?
На производительность базы данных влияет количество ядер, так как база данных – это работа с дисками. Чем больше потоков при обращении к дискам вы обеспечите, тем выше будет скорость. Частота процессора тоже будет влиять, но в меньшей степени и для сложных запросов.
Что вы можете сказать по поводу AMD Epyc для 1С в сравнении с Intel?
Опыта работы с этим процессором в нашем облаке нет, поскольку мы используем высокопроизводительные процессоры Intel® Xeon® Gold Processor 6348, 6244 и 6254.
Расскажите подробнее про активные и архивные данные
При работе с СУБД есть одно простое правило. Чем меньше размер базы данных, тем меньше расходуются ресурсы на работу с такой базой. Поэтому ту базу, с которой работают большинство пользователей, нужно стараться делать как можно меньше. Один из вариантов – разделить базу на активную и архивную. Например, документы, которые были проведены более года назад (или любой другой период в зависимости от потребностей вашей организации), можно положить в отдельную базу на отдельном сервере. Делать это можно с помощью регламентных заданий на уровне кода 1С. А для пользователей делать склейку данных, если они берутся из разных баз. Также можно выбрать другие критерии разделения. При таком раскладе ваша активная база всегда будет иметь небольшой размер, с ней легче будет работать, проще оптимизировать, обслуживать, бэкапить.
Как часто и какие выполняются регламентные работы, ребилды индексов, пересчет статистики и т.п., какое влияние на доступность/производительность 1С оказывается?
Частота запуска зависит от СУБД и от нагрузки. Можно начать от 1 раза в неделю и посмотреть на эффект. Далее либо уменьшать, либо увеличивать, либо оставить как есть. Процедуры оказывают значительное влияние на производительность, потому что планировщик строит оптимальные запросы.
Какой инструмент вы предлагаете для мониторинга производительности?
У нас используется Zabbix. Он дает возможность сбора данных со всех компонентов инфраструктуры либо из коробки, либо с помощью доработок. Для 1С мы забираем все, что есть в консоли администрирования, а также умеем разбирать технологический журнал, накладывая фильтры. Далее всю эту информацию можно свести в одном дашборде и анализировать.
Будет ли работать нормально RAS, если есть проблемы с производительностью 1С?
Если проблемы настолько жесткие, что на сервере катастрофически не хватает ресурсов, то есть вероятность, что RAS не будет отдавать данные. Но мониторинг в первую очередь настраивается для того, чтобы действовать превентивно и не доводить до такой ситуации (за исключением случаев, когда резко стало плохо, но и тогда у вас есть достаточно точное время начала проблемы, чтобы попытаться понять, что изменилось в этот момент).
Как вы можете прокомментировать встроенные средства мониторинга базы данных Tantor?
Очень хорошая платформа мониторинга и управления. Ее наличие является преимуществом этой СУБД по сравнению с другими продуктами. Однако надо учесть, что подключение сторонних сборок потребует покупки дополнительной лицензии. Для мониторинга самой Tantor она бесплатна. Если сравнивать с мониторингом с помощью Zabbix, то тут есть преимущество – платформа Tantor хранит планы запросов, поэтому вы всегда можете сравнить два запуска одного и того же запроса и проанализировать, что поменялось.
Можно ли быстро получить результат анализа итогов мониторинга?
Процесс анализа метрик по итогам мониторинга – это комплексный итерационный процесс, Иногда возникает потребность в длительном сборе данных, тюнинге и последующем анализе.
Какая архитектура у облака K2 Cloud?
В основе облака лежит гипервизор KVM и программно-определяемые СХД и сети. ПО для управления облаком написано полностью нами. Используются процессоры трех моделей от Intel, диски SSD и HDD. Для дисковой подсистемы используется искусственное ограничение скорости в зависимости от типа и размера диска, что позволяет пропорционально обеспечивать заказчиков требуемыми ресурсами.
Какие есть типы дисков в облаке, количество IOPS?
Мы предлагаем 3 типа дисков: HDD и два SSD с разными ограничениями по IOPS (10 IOPS/GB и 50 IOPS/GB).
HDD можно использовать для размещения архивной базы, что позволяет сэкономить. SSD с лимитом 10 IOPS/GB нужно применять для системных разделов, где лежит операционная система, и для данных СУБД. На высокопроизводительных дисках с повышенным лимитом можно хранить tempdb, транзакционные логи и тому подобные части СУБД, а также журнал 1С, если он активно пишется.
Какой Postgre и Linux вы используете?
Разные в зависимости от потребностей заказчика. Отечественные сборки Postgre и дистрибутивы Linux также используем. На них есть спрос.
Есть ли у вас компетенции по системам 1С? Если проблема с IaaS – понятно, а если проблема с самой 1C, вы сможете помочь?
У нас есть 2 выделенных департамента, которые профильно занимаются развитием сервиса 1С как из K2 Cloud, так и на локальной инфраструктуре наших заказчиков. Мы можем решить такие вопросы, как аудит производительности, устранение проблем производительности, миграция с SAP на 1С, миграция с площадки на площадку, внедрение 1С, поддержка 1С и многие другие.
Решения по проблемам 1С будут предложены в рамках поддержки облака или это отдельная услуга?
Техническая поддержка до уровня бизнес-приложений – всегда отдельная услуга, которая рассчитывается по запросу. В рамках такой услуги могут быть предложены: аудит всех компонентов, обеспечивающих работу систем 1С на программном, аппаратном и инфраструктурном уровнях; формирование отчета об обследовании и выработка рекомендаций по устранению проблем; работы по реализации рекомендаций с целью устранения проблем производительности, параллельной работы пользователей и повышения качества функционирования системы; техническая поддержка систем 1С под ключ и др.
Ваше облако более выгодно по сравнению с арендой выделенного сервера?
Все зависит от технических параметров, которые необходимо оценить. В большинстве случаев облако дешевле выделенного сервера. В случае, если система требует стопроцентного использования ресурсов выделенного хоста и максимальной производительности, мы рекомендуем использовать услугу аренды выделенного узла в облаке. В нашем облаке есть гибкие тарифы в том числе на выделенные узлы, которые позволяют управлять ИТ-бюджетом с экономией для бизнеса.
Сколько баллов в тесте Гилева может получить система 1С в K2 Cloud?
35 баллов - http://www.gilev.ru/virtual/
Есть ли у вас специалисты, которые могут помочь со скоростью проведения документов в 1С:ERP? ПТУ по одному из контрагентов в среднем проводятся за 20 секунд (и это ночью без активных пользователей). Далее детали: настройки сервера по рекомендациям 1С сделаны в диспетчере задач, процессор загружен на 30%, очередей к дискам нет, сеть вроде тоже тянет. 512 ГБ ОП. В замере производительности на первой строке по времени 105 раз выполнение запроса (занимает 15% времени)
У нас есть группа специалистов, которые могут помочь с этой проблемой. Но надо понимать что это требует значительных усилий и привлечения специалистов уровня не ниже архитектора, чаще всего с сертификатом эксперта по технологическим вопросам. Будем готовы проанализировать вашу проблему и оценить работы по улучшению скорости проведения документов.
Какая стоимость услуги предоставления облачной 1С? Входят ли в стоимость услуги лицензии 1С, СУБД, ОС, системы резервного копирования?
Стоимость услуг предоставления инфраструктуры 1С из облака рассчитывается исходя из суммы виртуальных машин (vCPU, vRAM, vSSD, vSAS, vSATA) + ОС + СУБД + резервное копирование с нужной глубиной хранения и графиком РК + дополнительные услуги (сеть, лицензии RDS и др). Лицензии 1С также могут быть включены в стоимость и оказание услуги в формате «единого окна». Если вы направите нам запрос на расчет, мы вышлем бюджетную оценку согласно вашему текущему сайзингу.
Гарантируете ли вы backup на 100%?
Если речь про консистентность, то все зависит от метода резервного копирования, насколько инструмент умеет «морозить» базу данных. Этот механизм есть у проприетарных агентских решений, а также в облаке есть интеграция с Windows VSS и возможность запускать скрипты для подготовки СУБД на Linux посредством облачного агента (по аналогии с VMware Tools). Но в любом случае резервные копии нужно периодически проверять на возможность восстановления, равно как и отрабатывать механизм восстановления всей системы – от сервера приложения до сервера СУБД.
Чем ваша поддержка отличается от поддержки 1С?
Скоростью и сервисностью: мы отвечаем быстрее, мыслим понятными для заказчиков категориями и действительно решаем проблемы.