Курс по Оптимизации 1С — Занятие №10

В рамках этого занятия необходимо изучить следующие материалы.

Модуль 3. Причины медленной работы

    Глава 8. Анализ причин медленной работы и оптимизация системы

    • Основные причины избыточных блокировок
    • Влияние автоматического режима на избыточные блокировки
    • Влияние неоптимальных запросов на избыточные блокировки
    • Методические ошибки приводящие к избыточным блокировкам
    • Блокирующее чтение в начале транзакции
    • Влияние режима удаления движений на параллельность работы

Практические задания

К сожалению, у Вас недостаточно прав для дальнейшего просмотра.

Если Вы приобрели курс, но еще не активировали токен — пожалуйста, активируйте доступ по инструкциям, высланным на Ваш email после покупки.

Если Вы не залогинены на сайте — залогиньтесь, вернитесь на эту страницу и обновите ее.

Если Вы залогинены, у Вас активирован токен доступа, но Вы все равно видите эту запись — напишите нам на e-mail поддержки.

Комментарии / обсуждение (199):

  1. Gosha009

    Здравствуйте! Вопрос насчет того что в упр. режиме в запросе записи не удовл. условию освобождаются сразу.
    Андрей скажу сразу у меня совершенно нет повода Вам не доверять, но другие комрады проявляют сомнение). Откуда взята эта информация, можете ли дать ссылку на первоисточник?

    • Андрей Бурмистров

      …
      (текст комментария доступен только участникам Мастер-группы)

      2015-10-28_8-26-47.png

      • Gosha009

        Андрей, спасибо! рука так и тянется поставить лайк). Проверил все так и есть. Жаль что среди экзаменаторов нет правдолюбов, можно было бы поспорить сразу на сертификат)

        • Андрей Бурмистров

          …
          (текст комментария доступен только участникам Мастер-группы)

  2. Andrefan

    Добрый день, Андрей.
    Не могли бы хоть примерно подсказать по такой проблеме:
    Было долгое зависание в работе всех пользователей по непонятным причинам. ЦУП оперативно задействовать не удалось, данные с консоли кластера 1С ничего особенного не показали. Повезло, что был подключен сервис анализа долгих запросов Гилева, который показал (скрин во вложении). На скрин-шоте видно, что была целая куча таймаутов (20 сек) на ожидании какой-то служебной таблицы Params, время как раз соответствует времени затруднений в работе. Всего накопилось 1992 секунды в течение 30-40 минут, т.е. эта таблица была просто чем-то заблокирована на протяжении этого времени. Решил все перезапуском SQL сервера, перезапуск кластера 1С ничего не дал. Вопрос : бывали ли на практике подобные проблемы и с чем они могут быть связаны (УПП 1.3, упр блокировки, платофрма 8.3.5.1570)?

    Params.JPG

    • Андрей Бурмистров

      …
      (текст комментария доступен только участникам Мастер-группы)

  3. e.martynenko

    Попался вот такой вопрос при подготовке к профке:
    Когда снимаются разделяемые управляемые блокировки?

    1. Сразу после выполнения запроса
    2. В конце транзакции
    3. В нужный момент с помощью метода Разблокировать объекта БлокировкаДанных
    4. Сразу после выполнения чтения в объектной технике

    Правильно ли я понимаю, что разделяемые — это S блокировки и правильным ответом будет 1.?

    • Андрей Бурмистров

      …
      (текст комментария доступен только участникам Мастер-группы)

  4. alex_15650

    Вопрос по заданию 28.
    В каком режиме работает конфигурация — автоматическом или управляемом?
    Что за товар с кодом 001?
    Или это все не имеет значения для решения задания?

    • Андрей Бурмистров

      …
      (текст комментария доступен только участникам Мастер-группы)

  5. Виталий Кривенко

    Вопрос по заданию 28: зачем упоминается отдельный индекс на товар? Ведь в данном случае остатки по Товару это не одна запись, а столько записей, сколько было разных складов в движениях. И пересечение записей будет в любом случае есть дополнительный индекс на Товар или нет.

    • Андрей Бурмистров

      …
      (текст комментария доступен только участникам Мастер-группы)

  6. SvetlanaV

    Андрей, просматривая вопросы/ответы, наткнулась на Ваш ответ от 27.07.15 автору smaylukk. Никак не могу понять — откуда берутся две S блокировки. Какая блокировка будет установлена на уровне СУБД, если в коде ставится управляемая исключительная блокировка? Исключительная блокировка -это же аналог Х блокировки? В Вашей табличке для нового курса написано, что при этом устанавливается Х блокировка на уровне 1С. А на уровне СУБД? Я что-то запуталась..

    И еще вопрос по заданию 28. Автоматический режим.Первый сеанс-запущена обработка, которая в транзакции запросом читает данные из виртуальной таблицы с установленный отбором по одному из двух измерений. Ставлю точку останова после Запрос.Выполнить(). Второй сеанс — записывается набор записей по тому же регистру накопления с тем же значением измерения, что и в первом сеансе. Ожидается, что набор не запишется, т.к. уровень изоляции Serializable, первый сеанс ставит S блокировку до конца транзакции. Второй сеанс пытается установить Х блокировку. Но эти блокировки не совместимы, поэтому должен быть тайм-аут, но его нет… Что я делаю или понимаю неправильно?

    • Андрей Бурмистров

      …
      (текст комментария доступен только участникам Мастер-группы)

      • SvetlanaV

        1.Скрин вопроса во вложении
        2.Разделения итогов нет. Итоги рассчитываются.

        %D0%A1%D0%BA%D1%80%D0%B8%D0%BD%20%D0%B2%D0%BE%D0%BF%D1%80%D0%BE%D1%81%D0%B0.png

        • Андрей Бурмистров

          …
          (текст комментария доступен только участникам Мастер-группы)

          • SvetlanaV

            2.Точно, не было текущих итогов.Спасибо

  7. Gosha009

    Добрый день!
    Как мне казалось, уже достиг просветления в вопросах какая блокировка и на какое время устанавливается, но тут появилась исправленная табличка и закрался когнитивный диссонанс, так что извините задам несколько вопросов)
    1)Управляемый режим.
    ТекстЗапроса =»ВЫБРАТЬ Товары.Ссылка ИЗ Справочник.Товары КАК Товары ГДЕ Товары.Код = &Код»
    до конца выполнения запроса будет заблокирован только 1 товар с кодом «&Код» или же все. (Как я раньше и думал).
    2)Управляемый режим. Товар = СправочникСсылка.ПолучитьОбъект(). Какие тут могут быть строки не подходящие под условия запроса? Может быть эту строку «Строки не подходящие под условия освобождаются сразу. Подходящие блокируются до конца транзакции» следует отнести только к Запрос.Выполнить()?
    3) Еще вопрос не по табличке. Если чисто гипотетически представить автоматический режим и СУБД версионник. Минимальная гранулярность — таблица. Помешает ли что-нибудь одной транзакции наложить U блокировку , а второй S блокировку на одну и туже таблицу. По таблице совместимости блокировок все OK, но не будет ли проблем с параллельность из-за гранулярности таблица.
    4) Когда выйдет новый курс сможем ли мы скачивать материалы нового курса или в доступе будут только материалы те которые сейчас?
    5) Можете ли хотя бы огласить новые темы, которые будут в новом курсе, чтобы самостоятельно поискать по ним информацию?

    • Андрей Бурмистров

      …
      (текст комментария доступен только участникам Мастер-группы)

      • Gosha009

        Здравствуйте!
        Потратил много времени чтобы найти информации по п.3. (У версионников S и U не совместимы), но не удалось найти удобочитаемой информации.
        Нашел только это:
        http://www.adp-gmbh.ch/ora/concepts/locks/compatibility_chart.html — для oracle
        http://www.postgresql.org/docs/current/static/explicit-locking.html — для PostreSQL
        Может быть я пока не так силен в английском, но в таблице для oracle мне показалось что S и U совместимы.
        Но конечно это не официальная информация.
        Не могли бы Вы дать человеческую ссылку чтобы убедится в Вашей правоте и без дрожи в голосе выдать эту информацию на экзамене) ?

        • Андрей Бурмистров

          …
          (текст комментария доступен только участникам Мастер-группы)

Комментарии закрыты