Хотите снизить нагрузку на процессор сервера в 2 раза?

Публикация № 1084154 27.06.19

База данных - HighLoad оптимизация

фоновое регламентные расписание нагрузка процессор производительность highload zabbix

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

Описание окружения: основной кластер 1С состоит из 2х виртуальных машин VM06 и VM10; сервер для тестов и копий баз - VM28. Много баз вида "бухгалтерия", куда иногда заходит 1 пользователь-бухгалтер, ведущий эту базу.

   Некоторое время назад прочитал статью Производительность сервера 1С и фоновые задания. Ну почитал, поогорчался по поводу очередного "это не баг, это фича" и забыл. Вернее, подумал "ну, как-нибудь надо будет проверить на своих серверах".
   Шло время. Тормоза на серверах нарастали. Загрузка процессора стала уже даже не 80-90%, а 90-100%. Причем в диспетчере задач на конкретной виртуальной машине часто видел 100% загрузку несколько минут подряд.
   Я глядел на графики и пытался увидеть зависимость между работой пользователей (или фоновых заданий) и нагрузкой на процессоры. И вот что заметил:

1) Нагрузка на процессоры не имеет прямой зависимости от числа сеансов пользователей. Потому что пользователи в 18:00 домой ушли, а нагрузка не ушла.
2) Нагрузка на процессоры резко падает в 24:00, и резко возвращается уже в 8:00 - а в это время (8:00) пользователи только начинаю заходить в 1С.
   Отсюда сделал вывод, что весомую нагрузку дают фоновые задания. На основании того, что нагрузка растет в 8:00, и падает в 24:00, - был вычислен "виновник" - регламентное задание "обновление индекса". Его типовое расписание как раз "с 8:00 каждый день".

 
 Офтопик

вообще конечно весьма странное расписание. Понятно было б если расписание было круглосуточным (как у большинства регламентных), или например с 8:00 до 17:00. А то получается что пользователи вечером ушли, а индексирование работает "ни для кого". И дает нагрузку в 8:00 вместо того, чтоб подготовить свежие данные в 7:30.

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

   На тестовом сервере дела обстояли еще хуже. От руководства поступило указание создать еще несколько копий баз с формулировкой "не блокировать регламентные через свойства базы в консоли, только отметить ""Это копия базы"", чтоб заблокировать обмены". Работать стало вообще невозможно. И в попытке хоть как-то повлиять на ситуацию, в копиях баз я решил по одному выключать регламентные задания которые нельзя было назвать жизненно необходимыми, а также отключить функциональность (полнотекстовый поиск, новости, проверка контрагентов, СПАРК-риски и т.п.).
Уже не помню почему, мой выбор первым делом пал на регламентное "проверка лицензии сеанса" в БСХП. И...

Отключение иных регламентных и функциональности не дали столь заметного эффекта.

   Итак, главный вывод данной статьи: эффект, описанный в статье "Производительность сервера 1С и фоновые задания" имеет место, но только когда интервал запуска (условно) менее минуты и в базе нет пользователей. В той статье наличие проблемы было подтверждено для пустого регламентного задания запускаемого каждые 10 секунд в 15 базах. В моем случае расписание запуска задания от разработчика БСХП - 15 секунд, число баз 9.

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

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

После тестового сервера пришла очередь рабочих баз и рабочих серверов:

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

 
 Почему включил выключенное регламентное

Вообще это стандартное регламентное, встроенное в конфигурацию "Бухгалтерия сельскохозяйственного предприятия" - БСХП. По-умолчанию оно включено. Я отключил его в январе-феврале из-за обнаруженных падений рабочих процессов сервера 1С (rphost.exe), причем падения в журнале Windows фиксировались очень часто, примерно раз в 5 минут:

На снимке видны значения параметров "version=" и "timestamp=". По этим параметрам гугл привел на https://forum.infostart.ru/forum86/topic183763/, откуда стало ясно что причина в ключах БСХП. Проблема была озвучена админам, был назначен исполнитель, который отчитался что сервер лицензий конфигурации обновлен (как оказалось позже, это было не так). Но падения не прекратились. Тогда был включен технологический журнал, который указал на вызов метода, а тот в свою очередь уже привел к регламентному:

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


Ссылки:

1) Как получить такие же графики по числу сеансов в zabbix?
См. Zabbix: Мониторинг состояния сервера 1С
А если хочется сразу готовое решение, то вот: <здесь будет статья с моей конфой>

2) Обработка для создания com-соединений по списку баз из окна запуска (по файлу ibases.v8i) Выполнение кода и создание пользователя сразу в нескольких базах

 

Понравилась статья? Поставь плюс. Рекомендую другие статьи:

Исправление ошибки "Для одного ссылочного кода существует более одной таблицы в базе данных"

Очистка диска от кэша неиспользуемых баз 1С

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. asved.ru 36 04.07.19 07:58 Сейчас в теме
Много баз вида "бухгалтерия", куда иногда заходит 1 пользователь-бухгалтер, ведущий эту базу.


Посмотрите уже в сторону разделения данных. В этом режиме такие проблемы решены.
2. Дмитрий74Чел 226 08.07.19 10:48 Сейчас в теме
(1) Тут замешано руководство и политика. В общем, "верхи не хотят".
А вообще, как я понял, готовое решение - это установка 1сFresh локально, чтоб не пилить свои разделители и не нарываться на грабли. Но оно денег стоит...
3. nyam-nyam 23.07.19 16:11 Сейчас в теме
(2)А что на счёт лицензий на соединения?
4. Дмитрий74Чел 226 25.07.19 10:33 Сейчас в теме
(3) По-идее тратятся конечно.
5. nyam-nyam 25.07.19 11:00 Сейчас в теме
(4)Можно сравнить стоимость лицензий и 1Cfresh. Ну или выделенный сервер для регламентных задач поставить, можно даже рабочую станцию с хорошим процом - но это тоже деньги.
6. Дмитрий74Чел 226 25.07.19 11:38 Сейчас в теме
(5) Да, уже смотрим на fresh...
А про "выделенный сервер для регламентных задач" - тут не все так однозначно. В контексте проблемы высокой нагрузки на сервер это не совсем решение, т.к. по-сути мы просто увеличим мощность, создав новый сервер, на который вынесем старт регламентных. С другой стороны, при попытке настроить запуск всех фоновых словил недоработку в типовой, когда пользователь загружает файл в базу в своем сеансе (на сервере 1), а потом запускается фоновое, которое должно обработать файл - и оно ищет файл на "своем" сервере.
Я уж не говорю про то, что нынче для настроек требований функциональности требуется недешёвая лицензия КОРП.
Оставьте свое сообщение

См. также

Параллельные вычисления - это просто

HighLoad оптимизация Платформа 1С v8.3 Бесплатно (free)

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

16.05.2023    1219    avalakh    2    

28

Экспертный кейс. Миграция высоконагруженных решений 1С на Linux/PostgreSQL без потерь производительности

HighLoad оптимизация Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

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

27.04.2023    3644    it-expertise    12    

26

Простой способ проверки быстродействия

HighLoad оптимизация Платформа 1С v8.3 Бесплатно (free)

Простой (а точнее, мегапростой) способ проверки быстродействия, когда очень важно его, быстродействие, улучшить

10.04.2023    2029    vkrivov@yandex.ru    14    

32

Postgres как предчувствие. Вычисляем процент импортозамещения в режиме Highload от 1С

HighLoad оптимизация Механизмы платформы 1С Платформа 1С v8.3 Бесплатно (free)

1С работает с СУБД Postgres более 10 лет, а сейчас это единственный легальный вариант для инсталляций в России. Много ли мы потеряем в производительности по сравнению с MS SQL? Выдержит ли Postgres 15.2 жесткий Highload со стороны 1С? Цель этой статьи - ответить на данные вопросы, с цифрами, которые можно использовать при расчете архитектуры.

23.03.2023    1650    1CUnlimited    9    

28

Delayed durability поможет вашему ORM увеличить производительность на 50% и более, если Вы только будете использовать …

HighLoad оптимизация Платформа 1С v8.3 Бесплатно (free)

ORM (Relational Mapping) используется во многих языках программирования, в том числе и в 1С. Однако реализация высоконагруженных решений, приводит к мысли, что разработчики ORM не учитывали ее влияния на производительность СУБД. Такая ситуация и в 1С, и ORM на Java, и наверняка в других ORM. В предыдущих частях показана глубина проблемы. В этой части предложено решение со стороны СУБД (MS SQL, Oracle, Postgres).

13.02.2023    689    1CUnlimited    0    

10

Концепция ORM как двигатель прогресса – выявит слабое место Вашей СУБД

HighLoad оптимизация Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

ORM (Object Relational Mapping) используется во многих языках программирования, в том числе и в 1С. Однако реализация высоконагруженных решений приводит к мысли, что разработчики ORM не учитывали ее влияния на производительность СУБД. Такая ситуация и в 1С и ORM на Java, и наверняка в других ORM. В предыдущей части статьи были изложены результаты теста, в этой статье ответы на самые часто задаваемые вопросы и новый тест.

01.02.2023    629    1CUnlimited    5    

1

Избавиться от скана таблицы в плане запроса

HighLoad оптимизация Запросы Платформа 1С v8.3 Запросы Бесплатно (free)

Для запросов, содержащих "LIKE %СтрокаПоиска%". Справедливо для MS SQL и Postgres.

20.12.2022    3082    vasilev2015    31    

25

Концепция ORM как двигатель прогресса - выдержит ли ее ваша СУБД?

HighLoad оптимизация Платформа 1С v8.3 Бесплатно (free)

ORM (Object-Relational Mapping) используется во многих языках программирования, в том числе и в 1С. Однако реализация высоконагруженных решений приводит к мысли что разработчики ORM не учитывали ее влияния на производительность СУБД. Такая ситуация и в 1С, и ORM на Java, и наверняка в других ORM. Причины приоткрывает данная статья.

16.12.2022    1340    1CUnlimited    5    

9

Нагрузочное тестирование в 1С:ERP

HighLoad оптимизация Платформа 1С v8.3 1С:ERP Управление предприятием 2 Бесплатно (free)

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

02.11.2022    4037    Tavalik    23    

34

Тормоза при записи номенклатуры в ERP 2.5.8.287

HighLoad оптимизация Платформа 1С v8.3 1С:ERP Управление предприятием 2 Россия Бесплатно (free)

Обратил внимание на медленную работу при пакетной записи элементов номенклатуры.

25.10.2022    835    m191    7    

5

Как я Java учил, а потом 1С-у удивлялся

HighLoad оптимизация Платформа 1С v8.3 Бесплатно (free)

Сравнение производительности 1С с Java.

23.09.2022    3044    Hadgehogs    23    

4

Утилита тестирования сервера 1С от HADGEHOGs

HighLoad оптимизация Мониторинг Платформа 1С v8.3 Россия Бесплатно (free)

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

21.09.2022    13118    1017    Hadgehogs    56    

130

Партицированная дисциплина программиста в 1С

HighLoad оптимизация Механизмы платформы 1С Запросы Платформа 1С v8.3 Бесплатно (free)

Почему при росте объемов базы 1С все становится медленней, даже если все индексы правильно сделаны? В статье на простом примере с регистром сведений показана причина и как этого избежать. Кто виноват больше, 1С или MS SQL решать Вам :)

20.09.2022    2030    1CUnlimited    2    

7

Быстрый фронт в базе размером 6.8 терабайт – наши стандарты при разработке и рефакторинге запросов

HighLoad оптимизация Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

От быстродействия запросов, которые обращаются к крупным таблицам, напрямую зависит скорость работы всей базы в целом. Артем Кузнецов, тимлид команды 1С в компании ООО «Финтех решения» на конференции Infostart Event 2021 Moscow Premiere рассказал, как оптимизировать производительность при поддержке больших систем. Показал, на что следует обращать внимание при код-ревью запросов, как оптимизировать RLS, виртуальные таблицы, индексы и условия, и как доработка архитектуры решения может ускорить работу базы.

29.08.2022    6390    Chernazem    44    

109

Workaround me в 1С/MS SQL и не только, системный подход к созданию костылей

HighLoad оптимизация Администрирование СУБД Платформа 1С v8.3 Бесплатно (free)

Workaround свидетельствует о невозможности решить проблему "правильным путем" и вызывает чувство стыда. Но практика показывает, что способность решать проблемы через workaround является порой единственным способом решить проблему в разумное время. А победителей, как говорят, не судят, так почему бы не создавать workaround по системе?

15.08.2022    1392    1CUnlimited    0    

6

Ускорим проведение в 1С:Управление холдингом

HighLoad оптимизация Запросы Платформа 1С v8.3 1С:Управление холдингом Бесплатно (free)

В 1С:Управление холдингом есть "нехороший" запрос, который съедает значительную часть времени проведения документов. Если его подправить, то проведение заметно ускорится.

10.08.2022    5335    sapervodichka    64    

74

Миссия невыполнима. Общие реквизиты разделители против временных таблиц

HighLoad оптимизация Механизмы платформы 1С Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

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

05.08.2022    1854    1CUnlimited    0    

14

Методика похудения для 1С – 100%

Свертка базы HighLoad оптимизация Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

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

28.07.2022    6033    1CUnlimited    39    

45

Экспертный кейс. История расследования одного небыстрого закрытия месяца в 1C:ERP. Пример неочевидных путей расследования в виде детективной истории

HighLoad оптимизация Механизмы платформы 1С Запросы Платформа 1С v8.3 1С:ERP Управление предприятием 2 Бесплатно (free)

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

11.07.2022    5767    it-expertise    27    

57

Производительный режим работы RLS

HighLoad оптимизация Роли и права Платформа 1С v8.3 8.3.14 8.3.6 8.3.8 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Комплексная автоматизация 2.х Бесплатно (free)

Функционал подсистемы УправлениеДоступом позволяет работать с RLS в двух режимах: стандартном и производительном. Каждый из режимов имеет свои преимущества и недостатки относительно другого. Основные из них будут рассмотрены в данном материале.

14.06.2022    9257    Neti    7    

96

Любовь. Быстродействие. 1С

HighLoad оптимизация Платформа 1С v8.3 Бесплатно (free)

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

26.05.2022    4217    vasilev2015    20    

34

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

HighLoad оптимизация Администрирование СУБД Платформа 1С v8.3 8.3.14 1С:ERP Управление предприятием 2 Россия Бесплатно (free)

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

24.05.2022    4299    avolsed    15    

33

Заметки эксперта. Расследование длительного выполнения отчета “Движение ТМЦ и затрат в производстве” (1С:ERP 2)

HighLoad оптимизация Платформа 1С v8.3 1С:ERP Управление предприятием 2 Бесплатно (free)

Кратко: в ходе проведения нагрузочного тестирования “1С:ERP 2” под ОС Linux на СУБД Postgres выявлено существенное замедление формирования отчета “Движение ТМЦ и затрат в производстве” - до 60 минут. После проведенного расследования и точечной корректировки СКД в отчете, без изменения бизнес-логики результатов его работы, работа отчета была ускорена в 80 раз - средний показатель формирования составил 30 секунд.

19.05.2022    2435    it-expertise    19    

23

Тестирование - игровое моделирование

HighLoad оптимизация Тестирование QA Платформа 1С v8.3 Бесплатно (free)

Мы рассмотрим подход к тестированию с применением элементов искусственного интеллекта

25.04.2022    1649    ivanov660    0    

15

Несколько слов про платформенный механизм оптимизации RLS

HighLoad оптимизация Платформа 1С v8.3 Бесплатно (free)

Смотрим, как работает платформенный механизм оптимизации RLS, сравним поведение на разных СУБД MS SQL, Postgres 11,13,14.

07.04.2022    3870    ivanov660    23    

69

Почему после обновления Бухгалтерии в марте 2022 года отчеты стали такими медленными

HighLoad оптимизация Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Бухгалтерский учет Бесплатно (free)

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

05.04.2022    5456    DBOdin_Lab    33    

29

Экспертный кейс. Расследование фатального замедления времени расчета себестоимости в 1С:ERP 2

HighLoad оптимизация Механизмы типовых конфигураций Запросы Платформа 1С v8.3 1С:ERP Управление предприятием 2 Бесплатно (free)

При выполнении нагрузочного тестирования информационной системы на базе 1С:ERP для одного из клиентов с целью оценки возможности миграции системы на PostgreSQL и Astra Linux мы столкнулись с неприемлемым увеличением времени выполнения расчета себестоимости. Строго говоря, сценарий тестирования закрытия месяца не был выполнен вообще – он не укладывался в таймаут выполнения теста, 24 часа. По прошествии 18 часов всё ещё шло выполнение операции «Распределение затрат и расчет себестоимости». Более 16 часов выполнялся подэтап “Расчет партий и себестоимости. Этап. Расчет себестоимости: РассчитатьСтоимость”. Всё это время выполнялся запрос, который в текущей инфраструктуре клиента (СУБД MS SQL Server) выполняется чуть более 3 минут на аналогичных данных.

25.03.2022    5895    it-expertise    92    

68

Экспертный кейс. Расследование деградации производительности системы. Проведение документа “Поступление товаров и услуг” (1С:ERP 2)

Механизмы платформы 1С Запросы HighLoad оптимизация Платформа 1С v8.3 1С:ERP Управление предприятием 2 Бесплатно (free)

В ходе проведения нагрузочного тестирования одним из наших клиентов была выявлена сильная деградация производительности системы в целом и, в частности, выполнения ключевой операции “Проведение документа поступление товаров и услуг” в течение выполнения теста. Согласно данным подсистемы БСП “Оценка производительности”, время выполнения ключевой операции “Проведение документа поступление товаров и услуг” возрастало в процессе тестирования с 15-20 секунд в начале тестирования до 150-200 секунд в его финале.

02.03.2022    4304    it-expertise    50    

31

Пример пошагового решения проблемы производительности на базе Postgres SQL с картинками

HighLoad оптимизация Технологический журнал Платформа 1С v8.3 Бесплатно (free)

Рассмотрим по шагам процесс обнаружения, анализа и решения проблемы производительности на примере базы ERP, сравним отличия в работе Postgres и MS SQL.

28.02.2022    13599    ivanov660    18    

147

Ускорение работы конфигуратора 1С с большими прикладными решениями

HighLoad оптимизация Платформа 1С v8.3 Бесплатно (free)

Ускорение работы 1С конфигуратора с большими прикладными решениями путем размещения системных каталогов 1С на RAM диске.

13.01.2022    7445    stg2005    105    

40

Ошибка производительности при проведении этапа 2.2 в ERP 2.4 и ERP 2.5

HighLoad оптимизация Платформа 1С v8.3 1С:ERP Управление предприятием 2 Россия Бесплатно (free)

Хочется поделиться одним подводным камнем, с которым могут встретиться другие пользователи ERP. Искал решение в интернете, но ничего похожего не нашел. Поэтому решил создать эту тему.

06.12.2021    1908    Rokky78    6    

12

Повышение производительности веб-сервисов. Переиспользование сеансов

WEB-интеграция HighLoad оптимизация Платформа 1С v8.3 Бесплатно (free)

Повышение производительности веб-сервисов. Переиспользование сеансов. Практическая реализация.

20.10.2021    4953    sorter1    3    

47

Оптимизация проведения документов списания партий в УПП 1.3

HighLoad оптимизация Платформа 1С v8.3 1С:Управление торговлей 10 1С:Управление производственным предприятием Бесплатно (free)

Почти в каждой конфигурации УПП 1.3 (возможно, и в УТ 10.3) есть медленный запрос, тормозящий проведение документа списания. Данная публикация раскрывает места вызова данного запроса и приводит пример оптимизации. Пример показывает результаты проведения документа «Реализация товаров и услуг», но метод работает и для других документов списания партий.

09.09.2021    1531    info1i    5    

8