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

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

  1. TopicStarter Overlay
    hool
    Offline

    hool

    Регистрация:
    31 окт 2012
    Сообщения:
    32
    Симпатии:
    0
    Баллы:
    1
    Железо:
    • Сервер IBM ExpSell x3650 M3(Rack 2U, 1xXeon E5645 6C (2.4GHz 12MB), 2x4GB Chipkill 1.35V RDIMM, noHDD 2.5" HS SAS (8up), M5015 w/batt. (512MB/RAID 0/1/5/10/50), 4xGbE, DVDRW, 2x675W HS PS)
    • Процессор IBM (IBM ExpSell Intel Xeon Processor E5645 6C 2.40GHz 12MB Cache 1333MHz 80w (x3650 M3) (81Y6537))
    • Оперативная память IBM (Express 4GB (1x4GB, 1Rx4, 1.35V) PC3L-10600 CL9 ECC DDR3 1333MHz LP RDIMM (x3400 M3/x3500 M3/x3550 M3/x3620 M3/x3630 M3/x3650 M3/x3755 M3) (49Y1406))
    • Жёсткий диск IBM 300 GB 10K 6 Gbps(SAS 2.5" SFF Slim-HS HDD 42D0637 (x3550M2/x3650M2/x3400M2/x3500M2)) - RAID 10 2x4
    ОС:
    esxi 4.1 на которой поднята виртуальная машина Windows Server 2008 R2, 16Gb RAM, 496Gb Storage.

    Софт:
    Сервер 1C:Предприятие 8.2.13.219, MSSQL 2008 (размер базы 19Гб).

    Пользователи:
    140 "одновременных" клиентов (8 роботов 1С с интервалами запуска каждые 5с, 40 клиентов в локальной сети (30 на 1Гбит/с allied telesis, 10 на 100Мбит/с), 100 удалённых клиентов (10Мбит/с LAN со стороны сервера, и GPRS со стороны клиентов))

    Примечание:
    Работа с программой очень оперативная, так что ЗАДЕРЖКИ при открытии окон (и др. действий пользователя) даже на доли секунды ОЩУТИМО МЕШАЮТ работе (По крайней мере для 10 пользователей на Гигабитной LAN это КРИТИЧНО, особенно в часы "пик").

    Проблема в том что у этих самых "КРИТИЧНЫХ" пользователей возникают задержки.

    Мне удалось отловить момент торможения и собрать некоторые общие данные:
    1) В этот момент тормоза начались:
    Посмотреть вложение 12717
    Посмотреть вложение 12718
    Посмотреть вложение 12719
    Посмотреть вложение 12720

    2) где-то примерно через час их стало меньше:
    Посмотреть вложение 12721
    Посмотреть вложение 12722
    Посмотреть вложение 12723
    Посмотреть вложение 12724

    Вот ещё несколько данных которые могут быть полезны:
    Посмотреть вложение 12725
    Посмотреть вложение 12726
    Посмотреть вложение 12727
    Посмотреть вложение 12728

    Вопрос: Куда лезть дальше, чтобы установить причину?

    Вложения:

  2. TODD22
    Offline

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

    Регистрация:
    23 фев 2009
    Сообщения:
    4.759
    Симпатии:
    147
    Баллы:
    104
    Надо наверное делать замер производительности "критичных" операций. Там может проблема или в запросах или может в трансляции этих запросов в sql.
    Что у вас за конфигурация? На каких операциях возникают задержки?
    Какие запросы выполняются, что попадает в выборку.
  3. TopicStarter Overlay
    hool
    Offline

    hool

    Регистрация:
    31 окт 2012
    Сообщения:
    32
    Симпатии:
    0
    Баллы:
    1
    Конфигурация не типовая 1С Предпиятие 8.2.13.219, Инфокрафт "Управление службой такси".
    Критичные тормоза возникают при создании заказа на такси.
  4. TopicStarter Overlay
    hool
    Offline

    hool

    Регистрация:
    31 окт 2012
    Сообщения:
    32
    Симпатии:
    0
    Баллы:
    1
    Что вы имеете ввиду, как их можно сделать?
  5. TODD22
    Offline

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

    Регистрация:
    23 фев 2009
    Сообщения:
    4.759
    Симпатии:
    147
    Баллы:
    104
    С начало смотрите внимательно какие процедуры выполняются, далее включаете замер производительности в конфигураторе и запускаете отладку. Так вы увидите статистику по времени выполнения кода. Возможно не оптимально написаны запросы, возможно код...
    Например из практики. В одной конфигурации есть сетка расписания. Каждый раз при её обновление и перестройке для каждой строки выполнялась функция которая получала из константы значение шага сетки. Так вот записей было несколько сотен и для нескольких сотен каждый раз вызывалась процедура получения значения. А специфика такова что этот шаг сетки устанавливается один раз на год при настройке программы. Вот и тормоза... Когда 10 человек начинают строить сетку....
    Или когда запрос сначала получает 100 000 строк, а потом из них перебором выбирает нужные.....
  6. shurikvz
    Offline

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

    Регистрация:
    1 окт 2009
    Сообщения:
    8.410
    Симпатии:
    316
    Баллы:
    104
    hool, я не сисадмин.
    Правильно я понимаю, что у вас всего один процессор? Насколько понимаю из графиков - загрузка его не падает ниже 75%.

    Можете дать следующие числовые значения показателей (стандартные названия счетчиков в win):
    - memory (pages/sec)
    - network interface (bytes total/sec)
    - physical disk (_total) Averge disk queue length
    - processor (_total) % Processor Time
    - system - processor queue length

    Средние и максимальные значения (ну естественно за какой-то промежуток времени в момент нагрузки).


    У вас размер базы 19Гб, скулю выделено 10. Есть возможность выделить скулю больше (вплоть до 20 гб)?
  7. TopicStarter Overlay
    hool
    Offline

    hool

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

    Вложения:

  8. shurikvz
    Offline

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

    Регистрация:
    1 окт 2009
    Сообщения:
    8.410
    Симпатии:
    316
    Баллы:
    104
    Вижу только числовые значения для загруженности процессора. Средний процент загрузки - 66%. Это практически предел. При средней загруженности процессора более 70% - рекомендуется замена его на более мощный. По остальным показателям чисел не вижу.
  9. shurikvz
    Offline

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

    Регистрация:
    1 окт 2009
    Сообщения:
    8.410
    Симпатии:
    316
    Баллы:
    104
    Чтобы сэкономить время: http://kb.1c.ru/articleView.jsp?id=10 ознакомьтесь (требуется логин и пароль на ИТС).
  10. uza
    Offline

    uza 1С, VBA (EXCEL), VB (.NET + WEB)

    Регистрация:
    10 июл 2007
    Сообщения:
    1.845
    Симпатии:
    1
    Баллы:
    29
    140 одновременных клиентов. Из них 100 - удаленные (через вебморду? и веб сервер "крутиться" там же?)
    8 роботов хреначат чета каждые 5 секунд.... и все это на 8гигах ОЗУ и одном, хоть и 6и ядрёном камушке? И там же и одинцэ и скуль?
    + Все это крутиться еще и в виртуалке (а что еще у вас трудиться на этом сервере?)....
    Вы чего то другого ожидали?

    Решение:
    1 - скуль переводим на отдельный сервак. Примерно такой же конфигурации, или даже помощнее.
    2 - 1С на другой сервер. А лучше наверное даже на два (кластер). Но для начала попробовать один с выделением 2х процессов.
    3 - Оптимизировать ваших 8и роботов каждые 5 секунд. Зачем 8 роботов то? Вы под "роботом" понимаете регламентное задание 1С, или у вас еще и клиент стартует? Нужно ли каждые 5! секунд? Не достаточно ли 10-15 минут. А критичные по времени процессы (ну например рассылка емайлов или чего там) представить в виде другой логики?
    4 - веб часть вынести на третий сервер. IMHO процессор там можно такой-же, или слабее, а вот памяти - (пальцем в небо нос) - 128метров на юзера = 128 * 100 = 12 гб (=> 16 гигов озу).

    5 - Внимательно просмотреть алгоритмы создания заявки (если говорите что тормозит именно в это время) т.к. возможно алгоритмы не оптимальны:
    а - вызывают сложные мат.вычисления
    б - дергают сильно избыточное количество данных (одним некорректным соединением в запросе - легко! пусть даже на выход из запроса и прийдет только то, что нужно)
    в - вызывает блокировки по избыточному количеству записей БД (блокирует всю БД, или сильно больше записей чем нужно)
  11. TopicStarter Overlay
    hool
    Offline

    hool

    Регистрация:
    31 окт 2012
    Сообщения:
    32
    Симпатии:
    0
    Баллы:
    1
    По остальным показателям шкала используется та же, только значение делится (или умножается) на коеффициент в столбце Scale.
  12. shurikvz
    Offline

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

    Регистрация:
    1 окт 2009
    Сообщения:
    8.410
    Симпатии:
    316
    Баллы:
    104
    :) Я это понимаю.
    Среднее значение то как посмотреть?
  13. TopicStarter Overlay
    hool
    Offline

    hool

    Регистрация:
    31 окт 2012
    Сообщения:
    32
    Симпатии:
    0
    Баллы:
    1
    Признаю, средние значения не досмотрел. Но пока нет возможности их вывести, поскольку даже запуск perfmon с перечисленными характеристиками оказывает влияние на производительность системы.
    Зато обнаружилась одна неполадка: Alert в конфигурации системы. На удалось выяснить - это ошибка батаррейки RAID, из-за которой система (в целях "безопасности") снижает производительность системы на 40-50%:
    Посмотреть вложение 12756
    В данный момент ставим патч, позволяющий исправить данное недоразумение.
    После чего планируем разнести SQL и сервер 1С на кластер из двух машин (одна для диспетчеров, вторая для остальных), что позволит на наш взгляд снизить влияние на диспечеров подключение иных пользователей 1С, которых будет даже поболее по количеству сессий.

    Таким образом разнесем систему на три виртуальные машины:
    1) SQL;
    2) 1С-сервер-кластер - диспетчеры;
    3) 1С-сервер-кластер - остальные;
    И посмотрим что из этого получится.

    Вложения:

  14. TODD22
    Offline

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

    Регистрация:
    23 фев 2009
    Сообщения:
    4.759
    Симпатии:
    147
    Баллы:
    104
    А код не смотрели? Замеры производительности не делали? А то тормоза как я понял у диспетчеров, а не у всех пользователей, вам нужно ускорять код и оптимизировать работу диспетчеров, вряд ли установка кластера позволит вам ускорить их работу. Скорее всего те же задержки и получите.
    Сделайте скрин замера производительности ключевых операций(которые надо ускорить) и выложите сюда.
  15. TopicStarter Overlay
    hool
    Offline

    hool

    Регистрация:
    31 окт 2012
    Сообщения:
    32
    Симпатии:
    0
    Баллы:
    1
    Код смотрели - вроде как всё оптимально написано, а на счёт замеров производительности - попробуем...
  16. TODD22
    Offline

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

    Регистрация:
    23 фев 2009
    Сообщения:
    4.759
    Симпатии:
    147
    Баллы:
    104
    А что его смотреть без замеров? Как вы определили что оптимально, без замера? Где критерий оптимальности?
    А вот реальные цифры замера производительности скажут о многом :)
  17. TopicStarter Overlay
    hool
    Offline

    hool

    Регистрация:
    31 окт 2012
    Сообщения:
    32
    Симпатии:
    0
    Баллы:
    1
    вот посекундный график за минуту мониторинга и средние значения:
    Посмотреть вложение 12766

    Средние/Максимальные значения (за минуту):
    - memory (pages/sec): 1.258 / 2.994
    - network interface (bytes total/sec): 2 280 000 / 5 800 000
    - physical disk (_total) Averge disk queue length: 0.365 / 1.030
    - processor (_total) % Processor Time: 45 / 71
    - system - processor queue length: 0.500 / 8.000

    Но при этих показателях 1С в диспетчерской ещё не сильно тормозит.

    Вложения:

  18. TopicStarter Overlay
    hool
    Offline

    hool

    Регистрация:
    31 окт 2012
    Сообщения:
    32
    Симпатии:
    0
    Баллы:
    1
    А вот график за 30 минут по 30 секунд мониторинга и средние/максимальные значения:
    Посмотреть вложение 12768

    Средние/Максимальные значения (за пол часа):
    - memory (pages/sec): 1.051 / 3.033
    - network interface (bytes total/sec): 2 431 000 / 2 774 000
    - physical disk (_total) Averge disk queue length: 0.410 / 1.806
    - processor (_total) % Processor Time: 50.4 / 55.7
    - system - processor queue length: 0.833 / 15.000

    И при этих показателях 1С в диспетчерской ещё не сильно тормозит.

    Вложения:

  19. shurikvz
    Offline

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

    Регистрация:
    1 окт 2009
    Сообщения:
    8.410
    Симпатии:
    316
    Баллы:
    104
    Особо страшного не вижу ничего, но предположу что судя по значению processor queue length - у вас временами процессор не вытягивает.

    Проблему с BBU устанили? Проверили в настройках, что теперь кэш включен и на чтение, и на запись?

    На сервере HT (hyper-threading) включен? Пробовали отключать и сравнивать производительность?

    Выполните в sql management studio следующий запрос:
    какое значение вернул?
  20. TopicStarter Overlay
    hool
    Offline

    hool

    Регистрация:
    31 окт 2012
    Сообщения:
    32
    Симпатии:
    0
    Баллы:
    1
    Проблему устранили:
    Посмотреть вложение 12773

    Это дало ощутимый эффект - стало намного лучше, но всё равно тормозит.
    ЗЫ Но вот где посмотреть включен ли кеш незнаю - не подскажете?) :tit:
    Я как понял нужно посмотреть настройки либо из под биоса, либо тулзу искать под конкретную модельку RAID, но она может не пойти под ESXi - я правильно понимаю?

    Вложения:

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