8.х Тормоза 1С 8.2 - как установить причину?

Тема в разделе "Установка платформы "1С:Предприятие 8"", создана пользователем hool, 1 ноя 2012.

  1. TopicStarter Overlay
    hool
    Offline

    hool

    Регистрация:
    31 окт 2012
    Сообщения:
    32
    Симпатии:
    0
    Баллы:
    1
    Я как понимаю об этом значении идёт речь?
    Посмотреть вложение 12894
    Я правда не понял зачем точку останова ставить? Чтобы убедиться что смотрю значение именно этой строчки?
  2. shurikvz
    Offline

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.409
    Симпатии:
    316
    Баллы:
    104
    Об этом, только смотреть не здесь. Только нужно само значение поля Запрос2.Текст.

    В отладчике поставьте точку останова в указанном модуле на строке 4749 и запустите программу. Когда выполнение дойдет до этой строки, поставить курсор на переменную Запрос2, правой кнопкой мыши -> вычислить выражение. И посмотреть чему равно Запрос2.Текст.
  3. TopicStarter Overlay
    hool
    Offline

    hool

    Регистрация:
    31 окт 2012
    Сообщения:
    32
    Симпатии:
    0
    Баллы:
    1
    Вот это?)
    Посмотреть вложение 12895
  4. shurikvz
    Offline

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.409
    Симпатии:
    316
    Баллы:
    104
    да.
    А сколько на глаз документов ЗадачаПользователя в системе? Ни одного отбора нет в запросе.
    В любом случае - без разбора логики работы обработки это не переписать.

    И еще, включите галочку "Для вызова процедур и функций включать время выполнения", что там получилось?
  5. TopicStarter Overlay
    hool
    Offline

    hool

    Регистрация:
    31 окт 2012
    Сообщения:
    32
    Симпатии:
    0
    Баллы:
    1
    Получается что для первой строчки ничего не изменилось, а для остальных...
    Посмотреть вложение 12896
    А что эта галочка означает?)

    ЗЫ Для удобства сравнения добавлю скрин без галочки:
    Посмотреть вложение 12897

    А сколько на глаз документов ЗадачаПользователя в системе я смогу узнать только завтра у того кто участвовал в разработке этой конфигурации, или есть другой способ?)

    Вложения:

  6. shurikvz
    Offline

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.409
    Симпатии:
    316
    Баллы:
    104
    Добавилось время вызова процедур. Т.е. возможность посмотреть не только сколько времени выполнения занимает каждая строка, а еще и вызов каких конкретно функций сколько времени занимает. Т.е. у вас больше всего времени занимает работа процедуры ОбновитьДанныеЗаказа() т.е. по возможности в первую очередь надо разбирать ее, и посмотреть что там можно улучшить - ускорить.
  7. TopicStarter Overlay
    hool
    Offline

    hool

    Регистрация:
    31 окт 2012
    Сообщения:
    32
    Симпатии:
    0
    Баллы:
    1
    А стоп, не прокрутил таблицу вверх после добавления галки, вот правильный скрин:
    Посмотреть вложение 12898
    ЗЫ И всё таки - что эта галка значит?)
  8. TopicStarter Overlay
    hool
    Offline

    hool

    Регистрация:
    31 окт 2012
    Сообщения:
    32
    Симпатии:
    0
    Баллы:
    1
    Судя по последнем
    Судя по последнему более правильному скрину больше всего времени занимают другие процедуры или я ошибаюсь?
  9. TODD22
    Offline

    TODD22 Профессионал в 1С Команда форума

    Регистрация:
    23 фев 2009
    Сообщения:
    4.755
    Симпатии:
    146
    Баллы:
    104
    Вот теперь смотрите логику работы и пробуйте оптимизировать первые 11 строк на скрине. Они больше всего времени выполняются.
    Смотрите саму первую строку. Выполняется она 1600 раз, наверное много :) Вот наверное в этом месте у пользователей и тормоза. Посмотрите по логике работы и в отладчике что делает данная процедура и как.
    У меня та же проблема была. Как раз строка выполнялась много раз в цикле, так ещё и сравнение было со строкой. Если конфа на поддержке можете написать разработчикам с просьбой прокоментировать ситуацию. У меня был похожий случай. Отправил скрин замера производительности и разрабы в следующем релизе очень сильно быстродействие улучшили.
    Напишите разработчикам. Или пригласите программиста.
  10. TODD22
    Offline

    TODD22 Профессионал в 1С Команда форума

    Регистрация:
    23 фев 2009
    Сообщения:
    4.755
    Симпатии:
    146
    Баллы:
    104
    А тормозит на каком именно действие? Например на проведение документа, открытие формы? Или как?
  11. TopicStarter Overlay
    hool
    Offline

    hool

    Регистрация:
    31 окт 2012
    Сообщения:
    32
    Симпатии:
    0
    Баллы:
    1
    Открытие форм, вкладок со списками, содержащими оперативную информацию, которая обновляется каждую секунду. Открытие форм из списков, прокрутка списков (что меня больше всего удивляет), выделение элементов списка, масштабирование карты Москвы прокруткой. Вобщем любые клики и прокрутки, которые могут делать пользователи в программе. Как будто 1С жутко занята чем то и ей совсем не до реакции на действия пользователей.
    ЗЫ Сразу замечу клиентские машины на мой взгляд достаточно мощные (ЦПУ, РАМ достаточо), не "запущенные" и тут ни при чём.
  12. TopicStarter Overlay
    hool
    Offline

    hool

    Регистрация:
    31 окт 2012
    Сообщения:
    32
    Симпатии:
    0
    Баллы:
    1
    Отличное решение, обязательно обратимся в техподдержку или к программисту. Благо теперь у нас есть что им предъявить :) НО...
    пока мы дождёмся от них ответа, а уж тем более нового релиза диспетчера успеют 10 раз повеситься и туда же отправить весь ИТ отдел. Поэтому неплохо было бы придумать что-нибудь оперативное, что в наших силах, до выяснения обстоятельств с кодом 1С. И хоть как то облегчить и без того нелегкую жизнь диспетчеров, тем более что эти тормоза напрямую влияют на количество выполненных заказов в день, а соответственно и сумму выручки. Не говоря уже о потраченных нервах всех 140 пользователей 1С, которые вынуждены всё это терпеть.

    Поэтому на данный момент что мы можем планируем сделать в ближайшее время:

    Решение первое - наиболее простое:
    1. Разнести 1С сервер и SQL на разные виртуальные машины (это связано с ограничением бесплатной ESXi на 4 vCPU на одну VM из-за чего на данный момент у нас пол сервера простаивает, а VM с 1С-SQL загибается)
    2. Выделить им виртуальную сетку vNetwork, дабы не засорять "эфир" локалки межсерверным траффиком СУБД-SQL

    Второе решение, которое мне пришло в голову:
    1. Разнести 1С сервер в кластер (на 2 виртуальные машины) и SQL также разнести на две VM с полной репликацией. Зачем? - к первой паре VM: 1C-SQL подключаем диспетчеров, ко второй паре остальных пользователей и таким образом уменьшаем влияние других пользователей 1С на работу диспетчерской.
    2. Естественно все четыре виртуальные машины общаются по собственной виртуальной сетке.
    3. Даже схему нарисовал ^^
    Посмотреть вложение 12901
    Но к сожалению второе решение не осуществимо, поскольку ресурсов IBM едва ли хватит по оперативке (24Гб).

    Но даже такое масштабирование 100% избавления от тормозов это не даст, поэтому полюбому придётся привлекать программистов.

    ЗЫ Господа, как считаете - я мыслю в правильном направлении или вышеописанные действия только "мёртвому припарки"?

    Вложения:

  13. TODD22
    Offline

    TODD22 Профессионал в 1С Команда форума

    Регистрация:
    23 фев 2009
    Сообщения:
    4.755
    Симпатии:
    146
    Баллы:
    104
    Смотрите какой код выполняется в момент открытия форм(какие то переменные инициализируются) пример: При открытии формы получаются какие то настройки+какие то данные. Вот надо смотреть. Возможно это каждый раз получать не надо(например получать значения констант) а достаточно получить её раз, как параметр сеанса.
    Смотрите какие данные во вкладках со списками, нужны ли они, может нужно фильтры добавить, может запросы не оптимальны, может ещё что то... :)
    На списки накладывайте отборы. Не нужно строить списки за год, если достаточно за текущий день. С картой конечно сложнее.

    Ну а так пригласите программиста который сможет посмотреть где у вас тормозит код и проанализирует логику. Затем уже по его рекомендациям со скринами и замерами пишите к разработчикам письмо.
    Просто то что строка кода выполняется 1600+раз и занимает 40% времени выполнения кода само по себе ещё не преступление это повод проверить :)

    Дело в том что 1С не самая быстрая платформа. Поэтому иногда используют стороннее ПО для оперативной работы с выгрузкой в учётную систему.
  14. TopicStarter Overlay
    hool
    Offline

    hool

    Регистрация:
    31 окт 2012
    Сообщения:
    32
    Симпатии:
    0
    Баллы:
    1
    Да вспомнил тормозит даже ввод текста в поля формы. На счёт скорости 1С платформы - к сожалению факт :( и действительно возникают мысли на счёт её смены. Ну неужели в 1С не могут разработать собственный "фреймворк" для ускорения выполнения стандартных или наиболее частых операций? :90:
  15. shurikvz
    Offline

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.409
    Симпатии:
    316
    Баллы:
    104
    Не думаю что в правильном.
    Физический сервер у вас один. Хоть 10 гипервизоров на него повесьте - то что быстрее он работать от этого не станет думаю однозначно, а вот медленнее вполне возможно.
  16. TODD22
    Offline

    TODD22 Профессионал в 1С Команда форума

    Регистрация:
    23 фев 2009
    Сообщения:
    4.755
    Симпатии:
    146
    Баллы:
    104
    Ну так на поле может быть обработчик. Или же это поле ссылочное и вводят название номенклатуры которая подбирается из справочника.

    Вам как пример кассы в супермаркетах. Если бы там 1С стояла то на кассах очереди были бы в 3-4 раза длинее.

    Пробуйте пишите разработчикам, может что то можно сделать. Хоть как то ускорить работу юзеров. Изменить логику работы, убрать лишние "свистелки" в интерфейсе.
  17. TopicStarter Overlay
    hool
    Offline

    hool

    Регистрация:
    31 окт 2012
    Сообщения:
    32
    Симпатии:
    0
    Баллы:
    1
    Мы тут посоветовались со специалистами и они говорят что у нас проблема в неиндексируемых элементах в базе.

    Не подскажете как найти непроиндексированные или неиндексируемые элементы в базе?
  18. shurikvz
    Offline

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.409
    Симпатии:
    316
    Баллы:
    104
    Специалисты говорят, что проблема в неиндексируемых элементах, но при этом не могут назвать таблицы? хм.. как так? (эт я не к тому, что такого не может быть, это я к тому что откуда такой вывод?)
  19. TODD22
    Offline

    TODD22 Профессионал в 1С Команда форума

    Регистрация:
    23 фев 2009
    Сообщения:
    4.755
    Симпатии:
    146
    Баллы:
    104
    +1.
    Если специалисты говорят что в этом проблема то наверное они же должны и решить её?
  20. TopicStarter Overlay
    hool
    Offline

    hool

    Регистрация:
    31 окт 2012
    Сообщения:
    32
    Симпатии:
    0
    Баллы:
    1
    Нет, я неправильно выразился: один хороший знакомый (с опытом по БД) посоветовал посмотреть неиндексируемые таблицы. Считает что у нас проблема именно с ними.

Поделиться этой страницей