Крючков Владимир

4897
Рейтинг

ivanov660
Владимир Крючков



  •   Регистрация: 02.02.2011 (14 лет назад)

  •   Был(а) на сайте: вчера в 15:10

Друзья
  • Alexander Kondrin
  • Антон Коваленко
  • Артур Аюханов
  • Группа Полипластик
  • Александр Алехин
  • Александр Егоров
  • Дмитрий Виссаров
  • Карина  Арсенян
  • Евгений Комиссаров
  • Ольга Терскова
  • Димтрий Павлюченко
  • Дмитрий Котов
  • Виктор Клевцов
  • Константин Скворцов
  • Игорь Антонов
  • Дмитрий Малышев
Подписчики 392

Группы

Профессиональный разработчик

IE 2017 Докладчик

IE 2018 Докладчик

IE 2019 Докладчик

Докладчик Meetup

IE 2021 Докладчик

Лауреат Infostart Awards

IE2021_msk Online

IE2022 Докладчик

IE2023 Докладчик

TEAMLEAD EVENT 2025 Докладчик

Рейтинг 4897

Инструменты и обработки Программист 1С v8.3 Универсальные Абонемент ($m) Внешняя обработка (ert,epf) Перенос данных 1C

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

3 стартмани

13.06.2024    8352    98    ivanov660    32       

84

Статья Системный администратор Программист Универсальные Бесплатно (free) Нет файла HighLoad оптимизация

При переводе типовой конфигурации 1C ERP/УТ/КА на PostgreSQL придется вложить ресурсы в доработку и оптимизацию запросов. Расскажем, на что обратить внимание при потерях производительности и какие инструменты/подходы помогут расследовать проблемы после перехода.

20.11.2023    20646    ivanov660    7       

84

Комментарии

HighLoadПроблемы производительности: Поля через несколько точек в условиях соединений#30 04.12.25 12:26
(29) Изменился план запроса, построитель стал считать по другому.
По моим замечаниям планировщик плохо анализирует планы в которых у него получается друг за другом идет много операторов NestedLoop.
HighLoadКак мы провели этим летом нагрузочный тест на 30 тысяч пользователей#12 02.12.25 13:46
(11) Вы замеряли сколько пользователей одновременно обращались в 1Ску или СУБД? Есть такие параметры как "ЗахваченоСУБД" и "ВремяВызоваТекущее", я в своем нагрузочном тесте именно их считал и определял количество одновременно работающих пользователей.
Получается что 30 000 пользователей онлайн и ? активно работающих одновременно?

В типовой ЕРП допустим что 4-6% от общего числа пользователей одновременно нажимают кнопки или что-то получают от системы итого должно примерно получиться в диапазоне 1 200 - 1 800.
У меня на машине в 40 ядер 300-350 что-то делающих пользователей заваливали систему, если прикинуть исходя из этого то ваш сервер наверное мог бы выдержать не более 900.

Ну, на счет одновременного входа. Пример из практики, менеджер 1С упал и всех пользователей выкинуло, а потом все пытаются одномоментно зайти. Так что подобные ситуации вполне реальные.
HighLoadПроблемы производительности: Поля через несколько точек в условиях соединений#22 25.11.25 23:15
(20)
1. Аервый вариант самый простой и быстрый. Но опять надо смотреть на распределение данных, в нашем примере все хорошо. Но вот если распределение будет для каждого типа по 1млн, то уже нужно будет смотреть другой вариант оптимизации. Т.е. зависит от ситуации.

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

3. Поддерживающую платформу пока не устанавливали. Но теоретически есть еще не традиционный инструмент - pgAdmin, который позволяет выполнить создание любых комбинаций индексов.
HighLoadПроблемы производительности: Поля через несколько точек в условиях соединений#21 25.11.25 23:03
(18) Спасибо, Дмитрий.
1. Я так понял ты имеешь ввиду нейронку. Какая цель эксперимента? Выявлять проблемы и/или получать от нее варианты решения. В этом случае, я думаю, потребуется до обучать модель.
Надеюсь к концу года появится под рукой собственный стенд и в этом случае я что-нибудь да попробуем. А с внешними сервисами это нельзя.

2. В Postgres имеется AQO (адаптивная оптимизация запросов). Ее я относительно давно пробовал, но тут требуется больше экспериментов, а времени не хватает.
HighLoadПроблемы производительности: Поля через несколько точек в условиях соединений#17 25.11.25 15:33
(15)
Я высказал свое мнение. Не Вам указывать что мне делать и на что тратить время.
HighLoadПроблемы производительности: Поля через несколько точек в условиях соединений#14 25.11.25 12:47
(13)
Цитата
проблем никаких
Не согласен с вашим мнением. Проблемы есть и они разного характера - от соблюдения стандартов до особенностей выполнения запроса.
HighLoadПроблемы производительности: Поля через несколько точек в условиях соединений#11 25.11.25 10:57
(10) Я делюсь примерами проблем и путями их решения. Мысли про ошибки - это так оффтоп.
Общаться с поддержкой я лично не люблю и пишу им в крайнем случае, т.к. мне есть чем заняться вместо того чтобы доказывать очевидные вещи. К сожалению, получил большой негативный опыт в этом плане.
HighLoadПроблемы производительности: Поля через несколько точек в условиях соединений#8 25.11.25 10:16
(6) Ок, принято. Может быть они почитают утром за чашкой кофе этот пример и следующий релиз будет с более качественным кодом. К сожалению, компания 1С запрещает им вступать в дебаты, т.ч. их мнения на этом сайте мы не услышим.
HighLoadПроблемы производительности: Поля через несколько точек в условиях соединений#5 25.11.25 9:57
(3)
Цитата
Любая тема, на тему производительности будет повторением
Если все все знают, тогда почему же столько явных проблем и косяков. Не поверю, что кто-о специально вставляет эти костыли.

(3)
Цитата
В начале написал, остальное красивая расшифровка.
Это одна из проблем, но не самая главная. Общая проблема заключалась в структуре наполнения базы данными. (И вполне возможно, что причиной была ошибка версии конфигурации ЕРП, в которой не заполнялся партнер. Но этот вопрос мы не исследовали, т.к. это отдельная задача)