Как увидеть "невидимое" (причины тормозов)

1. PerlAmutor 129 20.09.17 08:32 Сейчас в теме
Коллеги, посоветуйте куда копать. Ситуация следующая. Есть сервер ERP на очень хорошем железе. Пашет чуть ли не на RAM диске (PCI SSD). Онлайн >300 пользователей.
В последнее время наблюдаются странные тормоза. Например:
- перед проверкой метаданных в конфигураторе. Жму F7 идет проверка минут 10. При этом все пользователи наглухо виснут, только мышка и двигается. После проверки метаданных, уже конфигуратор предлагает обновится динамически. После этого ситуация может развиваться следующим образом:
- Приемлемый сценарий: пользователи зависают пачками (кого-то может даже выкинуть), но все-таки периодически отвисают. В какой-то момент, через пол часа - час все приходит в норму.
- Не приемлемый сценарий: зависают все наглухо на час-два.

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

- бывают паразитические зависания - работать можно, но трудно, видно что висит добрая половина. Отвисают, снова зависают. Может длиться сколь угодно долго. Пока не перезагрузят сервер.

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

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

- добрались до Activity Monitor SQL Management Studio. Внешне выглядит как будто - активности нет.

- включили технологический журнал. Видимых ошибок типа "конфликт блокировок", "предоставление ожидания блокировки" и т.п. - нет вообще.

Вчера была кульминация - даже перезагрузка сервера не помогла:
- чтобы избавится от динамического обновления - выгнали всех. Запретили вход
- обновили конфигурацию
- запустили пользователей и все. Висеть они начали с самого первого пользователя. 300 пользователей зашли и все висят после авторизации. Ждали 40 минут. Решили перезагрузить сервер - полностью железку. Запустился и все повторилось заново...

Куда копать и зачем пользователи висят, если ресурсы доступны на 99%?
ALmighty; +1 Ответить
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
15. DJDUH 17 20.09.17 10:01 Сейчас в теме
(1) может отладку отключи, а то при запуске у пользователей стоит разрешить и автоматом подключается!?
18. PerlAmutor 129 20.09.17 11:09 Сейчас в теме
(15) Отключена отладка. А когда включали по необходимости - она особо никого и не тормозила.

(16) 2012 считается древней?

(17) Пока на 8.3.7 сидим. Как принудительно запускаете реструктуризацию, через ТИИ? В последний раз реструктуризация запущенная из под ТИИ выполнялась несколько часов...
19. YanTsys 12 20.09.17 11:13 Сейчас в теме
(18)
2012 считается древней?

ну с моей точки зрения вполне себе свежая :)

А у вас на сервере одна база или несколько? Когда тормозит основная база на её копии на том же сервере тормоза наблюдаются?
Хоть как-то отделить это проблема конкретной конфигурации или платформы и ОС...
21. besica 20.09.17 11:20 Сейчас в теме
(19) Ряд проблем затрагивал весь сервер - но источником проблемы однозначно была эта база - потом по логам вытаскивали. И причем сильно нарастают проблемы именно тогда когда подключается более 50 пользователей.
То есть если бы к копии подключилось много пользователей - она возможно тоже начала бы себя так вести.
25. PerlAmutor 129 20.09.17 19:03 Сейчас в теме
(19)
А у вас на сервере одна база или несколько?

Одна

(22)
активно использовать поиски и отборы в различных списках. (почему и искали проблему в основном в области ППД)

Статистика на SQL сервере показывает, что в ТОПы попадают динамические запросы форм списков документов. Их выдает наличие "Top 40"/"Top 45".
Запросы типовые. К ним добавляется RLS + отборы с формы. Т.е., так называемая Pagination. Но, сервер при этом разгружен. То, что запросы часто "долбят" SQL сервер еще не означает, что это приводит к тормозам остальных.
И конечно отчеты. При закрытии месяца из-за них тормозят все жутко, но сервер при этом разгружен по всем мониторам ресурсов.

(23)
Антивирус не пробовали отключать и на сервере и на всех клиентских машинах хотя бы на час? (Может даже по этому поводу инет отключить и флешки на часик запретить чтобы без эксцессов )

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

(24)
Попробуй остановить службу сервера и почистить серверный кэш.

Вы про snccntx файлы?
26. YanTsys 12 20.09.17 19:37 Сейчас в теме
(25)
Одна

ну так если добавить еще одну копию базы на сервер и посмотреть синхронно они тормозят или каждая в свое время?

Если тормоза одной базы не будут влиять на другую то возможно у какого то пользователя выполняются какие-то длительные транзакции?

Когда у вас после перезагрузки сервера база тормозит, не проверяли, сразу после перезагрузки в списке пользователей пусто или уже есть какое-то фоновое задание?
27. PerlAmutor 129 20.09.17 21:13 Сейчас в теме
(26)
ну так если добавить еще одну копию базы на сервер и посмотреть синхронно они тормозят или каждая в свое время?

Мысль возьму на заметку. Спасибо.

(26)
Когда у вас после перезагрузки сервера база тормозит, не проверяли, сразу после перезагрузки в списке пользователей пусто или уже есть какое-то фоновое задание?

После перезагрузки старые сессии не "отвалились" (они и не отваливаются после перезагрузок операционной системы сервера), в том числе и фоновые задания. Но блокировка регламентных заданий стояла.
Т.е. картина такая: после обновления конфигурации сессий не было, открыл вход, 300 человек набежали, никто за 40 минут не прогрузился, ребутнули сервер без снятии сессий и установки блокировки на вход, поднялась операционная система, в консоли все сессии остались висеть, и продолжили висеть дальше еще около часа. В ТЖ видно, что сервер 1С запустился раньше SQL сервера, т.к. некоторые клиенты получали ошибки с невозможностью соединиться с SQL сервером. Даже когда SQL сервер поднялся (это тоже было видно в ТЖ, т.к. пошли запросы к таблице SystemSettings (ХранилищеОбщихНастроек)), все еще продолжали висеть после ввода логина и пароля.
28. besica 20.09.17 22:51 Сейчас в теме
Пропробйте таки сделать ТИИ с реструктуризацией.

(25)
Но, сервер при этом разгружен. То, что запросы часто "долбят" SQL сервер еще не означает, что это приводит к тормозам остальных.


У нас в моменты полтергейста вообще ситуация странная была - начинаешь поиск - запускается фоновое на сервере 1С - а на SQL сервер запрос прилетает спустя какое то время и сразу после обработки отвисает в 1С.
В те моменты когда удавалось начать ловить эту ситуацию - такое ощущение что сам запрос для sql строился 1C очень долго. Поймать это тоже проблема - постепенно зависают все и даже конфигуратор. В большинстве случаев на момент этих полтергейстов ничего криминального в журнале не было - как будто бы там просто очередь и все обработаться не успевает. Зависания не всегда были для всех - а по рабочим процессам - начилась в одном все его соединения подвисают. При этом у соединений остальных процессов вроде все в порядке.(в данном случае не проверяли как прилетают запросы на sql). К моменту когда зависали все к SQL серверу запросы от 1с переставили прилетать.
На копии базы ни на этом, ни на свободном идентичном сервере моменты потергейсты повторить не удалось.
23. YanTsys 12 20.09.17 12:24 Сейчас в теме
(1) Антивирус не пробовали отключать и на сервере и на всех клиентских машинах хотя бы на час? (Может даже по этому поводу инет отключить и флешки на часик запретить чтобы без эксцессов )
49. protexprotex 114 28.09.17 08:22 Сейчас в теме
(1) Пользователи в терминалке?
2. Xamele0n88 20.09.17 08:42 Сейчас в теме
Если аппаратные ключи то в nethasp.ini отключить BROADCAST, оставить только tcpip и прописать адрес сервера где вставлен ключ, также проверить нагрузку на этом сервере.
5. red80 20.09.17 08:47 Сейчас в теме
(2) Если проблема в ключах, при выкидывании пользователей об этом сообщается.
3. red80 20.09.17 08:44 Сейчас в теме
Кто же работает в конфигураторе в боевой базе?
8. PerlAmutor 129 20.09.17 08:58 Сейчас в теме
(3) над конфигурацией круглые сутки трудятся человек 5 через хранилище. Под доработки часто приходится исправлять отчеты и ошибки внесенные в прошлый раз. Спокойно, размеренно программировать с проверкой и бета-тестированием, обновлением раз в неделю - не дает ни руководство, ни 300 пользователей.


(2)
Если аппаратные ключи то в nethasp.ini отключить BROADCAST, оставить только tcpip и прописать адрес сервера где вставлен ключ, также проверить нагрузку на этом сервере.

Программная лицензия раздается.
4. VmvLer 20.09.17 08:45 Сейчас в теме
можно рассмотреть действия платформы в контексте проверки лицензий - просто версия.

я бы проверил производительность без лицензий, конечно в качестве научного эксперимента и только один раз)
6. red80 20.09.17 08:49 Сейчас в теме
Виртуалка? Нужно больше данных. Телепатическая машина сегодня не работает.
10. red80 20.09.17 09:01 Сейчас в теме
12. red80 20.09.17 09:09 Сейчас в теме
(11) На http://www.gilev.info/2013/02/1.html виртуалку настраивали спецы, а у вас - Вы.
tetraren; OlegAr; +2 2 Ответить
13. red80 20.09.17 09:41 Сейчас в теме
(12) Ну вот, и помогай после этого людям.
14. PerlAmutor 129 20.09.17 09:51 Сейчас в теме
(13) Минус не я ставил, т.ч. можете продолжать "помогать".
Rinoa1337; CyberBob; +2 Ответить
7. Octopus 337 20.09.17 08:56 Сейчас в теме
Примерно такую же симптоматику у себя наблюдаю при глубоком обращении к журналу регистрации. Стоит сделать отбор по какому-нибудь давно созданному объекту - виснут все до окончания выполнения запроса.
9. PerlAmutor 129 20.09.17 09:00 Сейчас в теме
(7) Несколько месяцев назад перевели на старый формат, когда такое было. Отбор по ЖР исключается хотя бы потому, что первые зашедшими в базу были пользователи с ограниченными правами и зависли они еще на этапе авторизации.

(5) Ни у кого таких сообщений не было, проверял по ТЖ.
(6) Hyper-V
32. KroVladS 34 21.09.17 10:36 Сейчас в теме
(9)
Hyper-V

Снапшоты отключили?

Включите мониторинг загрузки железа (особенно диски) на хосте и сравните графики с вашими провалами в производительности.

Пашет чуть ли не на RAM диске (PCI SSD)
а снапшоты могут делаться на HDD.
16. YanTsys 12 20.09.17 10:20 Сейчас в теме
SQL случайно не древняя?
17. besica 20.09.17 10:35 Сейчас в теме
А версия платформы какая?
У нас на 8.3.10 и уже несколько перебранных релизов постоянная проблема с обновлениями. Динамически в принципе давно не обновляем - но и монополное не панацея - на данный момент обновление это обновить и обязательно принудительно запустить реструктуризация таблиц ИБ.
Без реструктуризации - все непонятно подвисают, полнотекстовый поиск жутко висит везде - даже на маленьких справочниках. Появляются проблемы с подключением к базе. При этом ресурсы вообще не испольюзуются. Все висят но сервер свободен.
Сначала думали проблема в индексах ППД. Уже месяца три перебираем различные букеты проблем, случайным образом заметили про реструктуризацию - и вот уже 2 недели полет с обновлениями нормальный - и букет непонятных зависаний исчез.
20. besica 20.09.17 11:14 Сейчас в теме
Из под тии - а других варинтов пока нет, хотя у нас раньше была 8.3.8 - и вроде этой проблемы не было, поэтому в основном грешим именно на платформу.
22. besica 20.09.17 11:30 Сейчас в теме
Еще одно наблюдение - не просто много пользователей подключаются - а именно начинают очень активно использовать поиски и отборы в различных списках. (почему и искали проблему в основном в области ППД)
Но полная очистка и пересоздание индексов решить эту проблему не помогает. Мало того сервер пишет что индексы актуальны - но в произвольные моменты времени все вдруг начинает висеть при попытки поиска в дс
24. jeksis 20.09.17 14:26 Сейчас в теме
(0) Попробуй остановить службу сервера и почистить серверный кэш.
29. CyberBob 4 21.09.17 05:27 Сейчас в теме
Была похожая фигня, когда ЖР базы переваливал за 20 гиг. Удаляли и все начинало летать.
30. Alex_Beast 21.09.17 09:46 Сейчас в теме
v1-- создать копию базы в sql , модель восстановления выбрать простая, журнал обнулится и проверить работу, насколько я понимаю тут 300 юзеров не нужно
v2-- на рабочей базе средствами sql , задачи-создать резервную копию, сначала полную, затем журнал транзакций, в параметрах отметить опцию "Усечь журнал транзакций". тогда жт в архиве будет, а в базе усечется, и ничто не потеряно.

v3-- попробуйте службу агента sql остановить (или Агент SQL сервер в Management Studio), может в sql задания плана обслуживания накосячены, если поможет тогда и разбирайтесь с заданиями.

v4 -- в журнале sql ничего странного нет? ошибок соединения?

v5 -- сервер 1с к sql по имени обращается (на одной машине оба сервера) попробуйте на ip адрес поменять , даже если localhost.
v6 -- зеркалирование sql сервера выполнено ?? проверьте связь с зеркалом (в зависимости от варианта)
31. kiruha 388 21.09.17 10:00 Сейчас в теме
1. Была похожая проблема - оказалась в ключах , как уже писали.
Административными инструментами проверить кто на каких ключах.
Вставить физ ключ у тестовых пользователей и пронаблюдать работу.
Купить USB ключи вместо программных.

2. Жр регламентом чистить

3. Проверить используются ли огромные транзакции при обмене.

4. Поставить PERFEXPERT (дорого !)
http://www.softpoint.ru/solutions/perfexpert/
PS
Судя по : " что первые зашедшими в базу были пользователи с ограниченными правами и зависли они еще на этапе авторизации. "
ключи давно надо было проверить в первую очередь
33. YanTsys 12 21.09.17 20:02 Сейчас в теме
Кстати интересно как поведет себя база если кто-нибудь включит Сервис-Параметры-Имитировать задержку при вызовах сервера...
34. Сурикат 394 21.09.17 21:16 Сейчас в теме
График среднего время реакции рабочих процессов выложите, плз. И График свободной оперативной памяти?

Сколько процессов?
Конфигурацию железа тоже скажите, плз.
35. Сурикат 394 21.09.17 21:18 Сейчас в теме
У меня пользователи жалуются на тормоза при времени отклика РП в 1 с.

Скорее всего поможет увеличение количества РП.
36. Сурикат 394 21.09.17 21:19 Сейчас в теме
И дурацкий вопрос - режим энергосбережения гипервизора проверяли?
37. Сурикат 394 21.09.17 21:20 Сейчас в теме
Тестом Гилева железо меряли? Примерно похоже на среднее время аналогичного железа?
38. Сурикат 394 21.09.17 21:24 Сейчас в теме
- чтобы избавится от динамического обновления - выгнали всех. Запретили вход
- обновили конфигурацию
- запустили пользователей и все. Висеть они начали с самого первого пользователя. 300 пользователей зашли и все висят после авторизации. Ждали 40 минут. Решили перезагрузить сервер - полностью железку. Запустился и все повторилось заново...

А чистили сеансы перед тем как сервер ребутнуть?
Если не чистили, то чистите. Это убережет от таких проблем в 99% случаев.
39. Сурикат 394 21.09.17 21:28 Сейчас в теме
И мой вам совет, когда увеличите кол-во РП до кол-во ядер процессора:
1. Вводите ограничения памяти на процесс
2. Не обновляйтесь динамически при кол-ве памяти около 5Гб. Выгоняйте всех. Сбережете нервы себе и пользователям
40. PerlAmutor 129 22.09.17 06:39 Сейчас в теме
(39)
И мой вам совет, когда увеличите кол-во РП до кол-во ядер процессора:
1. Вводите ограничения памяти на процесс
2. Не обновляйтесь динамически при кол-ве памяти около 5Гб. Выгоняйте всех. Сбережете нервы себе и пользователям


Делали подобную настройку и вот к чему это привело:
- каждый из rphost'ов съедает минимум 2Гб ОЗУ даже при одном пользователе;
- на каждом из rphost'ов память растет по линейному сценарию, она может выделяться сотнями мегабайт, а освобождаться килобайтами;
- наша группа администрирования может запускать обработки и отчеты, которые единолично могут съесть и 10Гб ОЗУ;
- когда (не "если"!) происходит превышение ограничение по ОЗУ на один rphost - пользователи с него начинают отваливаться. Это происходит веерно, сначала на одном rphost'е, затем на втором, третьем и т.д. Т.е. нет никакого "прозрачного переключения сессии/соединения на новый rphost".
- при работе с одним rphost'ом он может съесть 50Гб ОЗУ, но все более менее работают;

Замкнутый круг...
zhernikov; +1 Ответить
42. Сурикат 394 22.09.17 09:18 Сейчас в теме
(40)
Замкнутый круг...


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

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

Нормальная картина, когда MS SQL загружает процессор на 20-25%, РП на 10-15%.

на каждом из rphost'ов память растет по линейному сценарию, она может выделяться сотнями мегабайт, а освобождаться килобайтами

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

Наша группа администрирования может запускать обработки и отчеты, которые единолично могут съесть и 10Гб ОЗУ

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

происходит превышение ограничение по ОЗУ на один rphost - пользователи с него начинают отваливаться. Это происходит веерно, сначала на одном rphost'е, затем на втором, третьем и т.д. Т.е. нет никакого "прозрачного переключения сессии/соединения на новый rphost"


Вам нужно выбрать или поведение, которое у вас сейчас наблюдается либо тормоза и возможный разрыв сессии при миграции с одного на другой РП. Это выбор между скоростью отклика сервера и расходом ресурсов (оперативной памяти в большей степени).

Для того, чтобы не было веера завершения РП уменьшите время засыпания РП и его завершения в спящем рижиме (по умолчанию очень большое время, это делается в конфигураторе). При таких настройках вылет пользователей минимизируется. У нас на 150 пользователях 2 завершения РП проблемные (примерно). А в день их около 30.
Выделенная память на 1С порядка 64 Гб, 8 РП, ограничение 7,5 Гб

У нас абсолютно такая же ситуация как и у вас. Платформа 8.3.8. Выбрали второй вариант. Т.к. беды (вылет программы при миграции пользователей) 20 человек (а именно такое у нас тоит кол-во пользователей на процесс) не сравнимы с бедами оставшихся 130.
Очень ждем 8.4 и надеемся, что там сборщик мусора JVM снимет часть проблем.

+ мониторинг отклика РП и параметров сервера в Zabbix. Как только видим приближение нехватки памяти уведомляем пользователей проблемного РП и завершаем его. Это случается где-то 2 раза в неделю. В остальное время (если нет динамический обновлений) сводная память на севрере 15 Гб. Всего на сервере 128 Гб, 64 Гб отдано по MS SQL

Поставьте 8.3.10 и посмотрите циклические ссылки. Может у вас в этом проблема. У знакомого были в ERP. Мы у себя не смотрели (УТ11), платформа старая =(
44. red80 22.09.17 10:30 Сейчас в теме
(42)
У вас тормоза именно из-за того, что 1 РП хост.

Этот РП хост не ест ресурсов, почему именно в нем проблемы?
45. Сурикат 394 22.09.17 10:59 Сейчас в теме
(44)
Потому что он должен их есть

Почему он не ест ресурсов? Потому что он медленно выполняет работу.
Если картина по загрузке ядер совпадает с той, которую я описал, то тогда мое предположение "сервер 1С не умеет перекидывать потоки между ядрами процессора" верно
41. Alex_Beast 22.09.17 08:44 Сейчас в теме
Всё выглядит так,
на действие Выпонить у вас ресурсов достаточно, а вот с какими то периферийными процессами или правами на запись файла или доступ к tmp файлам, или журнала, проблема (тем более что вы все регламенты отмели, так что остаются, права - файлы журналы, порты, у USR1CV8 все впорядке с tmp и пространством ??).
проверьте размер 1Cv8.lgd в reg_1641 (reg_xxxx), судя по вашим параметрам он должен быть гигов 70 не менее , попробуйте просто переместить/переименовать файл, встречается проблема записи в большой журнал. Или у вас в 1с журнал регистрации отключен?
И надеюсь безопасный расход памяти за один вызов в настройках сервера у вас не установлен?
Отключите все ограничения сервера 1С по памяти (если установлены). Режим распределения нагрузки - Приоритет по производительности ? иначе сервер начинает жадничать по ОЗУ. У вас кластер серверов 1с с балансировкой ? подключитесь к каждому из них проверьте поведение. Также в случае балансировки возникает проблема, что у клиента настроено соединение только к одному серверу, а сервер для балансировки перекидывает на второй и все висит ...
43. Сурикат 394 22.09.17 09:24 Сейчас в теме
(41)
ЗУ. У вас кластер серверов 1с с балансировкой ? п


Сервер не расходует ресурсы.
Надо сначала эту проблему решить.
46. PerlAmutor 129 27.09.17 16:20 Сейчас в теме
Ситуация сегодня. Пол дня все работали нормально, затем резко зависла половина пользователей.

"Замер производительности" с включенной отладкой на сервере показал, что все висят в этой функции (ERP):

Функция ВычислитьВБезопасномРежиме(Знач Выражение, Знач Параметры = Неопределено) Экспорт
	
	УстановитьБезопасныйРежим(Истина);
	
	МассивРазделителей = ОбщегоНазначенияПовтИсп.РазделителиКонфигурации();
	
	Для Каждого ИмяРазделителя Из МассивРазделителей Цикл
		
		УстановитьБезопасныйРежимРазделенияДанных(ИмяРазделителя, Истина); // ТУТ ВСЕ ВИСЯТ
		
	КонецЦикла;
	
	Возврат Вычислить(Выражение);
	
КонецФункции
Показать


Эта функция общего модуля вызывается через периодические проверки раз в 20 минут, а также при входе пользователя в программу. Функция может вызываться больше 200 раз пока клиент висит. УстановитьБезопасныйРежимРазделенияДанных - что конкретно она делает на уровне базы данных/железа и т.д., кто-нибудь знает?
47. red80 28.09.17 08:04 Сейчас в теме
(46)
Эта функция общего модуля вызывается через периодические проверки раз в 20 минут...Функция может вызываться больше 200 раз пока клиент висит.
У вас по трое суток пользователи висят?
(46)
УстановитьБезопасныйРежимРазделенияДанных - что конкретно она делает на уровне базы данных
Очевидно устанавливает безопасный режим разделения данных.
51. PerlAmutor 129 28.09.17 09:04 Сейчас в теме
(47)
У вас по трое суток пользователи висят?

Они у нас начинают висеть каждый день - стабильно, даже без обновления конфигурации. Могут висеть час и более.


(47)
Очевидно устанавливает безопасный режим разделения данных.

Но что конкретно скрывается под этой фразой? Алгоритм какой? Какие блокировки и на что ставятся, что проверяется, какие таймауты, какие действия можно сделать в этот момент, какие нельзя (помимо описанных в справочнике)?

(48)
а разделение настроено? может криво настроили?

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

(50)
(46)проверьте размер журнала 1С (при большом размере, начинаются жуткие тормоза), в момент зависания пользователей проверьте свободное место на жестком диске.

Размер ЖР в пределах разумного, до 100Гб, старый вариант - не тормозящий никого наглухо в отличие от SQLITE варианта.
На каком из дисков? Системном, sql базы данных или под кэш сервера (где ЖР лежит)? У нас 3 разных. Там SSD стоят, но место есть. Сервер не падает из-за нехватки места на диске, пользователи сообщений никаких не получают, очередь диска нулевая. Система полностью разгружена по всем показателям.
52. alex_sh2008 4 28.09.17 09:14 Сейчас в теме
(51)На том где сидит ЖР и кэш сервера 1С. Была похожая ситуация, во время много поточной обработки удаления организаций, забыли урезать журнал, за сутки сожрал 100Гб диск, места для кэша серверу 1С не хватило, он упал.
48. EVKash 14 28.09.17 08:18 Сейчас в теме
(46) а разделение настроено? может криво настроили?
50. alex_sh2008 4 28.09.17 08:44 Сейчас в теме
(46)проверьте размер журнала 1С (при большом размере, начинаются жуткие тормоза), в момент зависания пользователей проверьте свободное место на жестком диске.
53. user633533_encantado 11 28.09.17 10:08 Сейчас в теме
А ограничение доступа на уровне записей у вас используется ?

В чем такая нужда обновлять динамически, база круглосуточно используется ?
54. PerlAmutor 129 28.09.17 10:57 Сейчас в теме
(53)
А ограничение доступа на уровне записей у вас используется ?

Не везде, но используются. Причем интересно то, что когда пользователь использует формы с динамическими списками и работает RLS - SQL сервер практически не загружен, но прокрутка списка продолжает тормозить...

(53)
В чем такая нужда обновлять динамически, база круглосуточно используется ?

Обычно 300 пользователей её используют с 6 до 18, после этого идет запуск регламентных заданий, которые бы "убили" возможность нормально работать. Но при этом часов до 00:00 еще пользуются базой человек 10. Дальше снова регламентные задания и бэкапы.
Разработка конфигурации не прекращается ни на день. В следствии этого появляются "косяки", которые нужно устранять оперативно.

Вчера специально не обновляли ничего целый день, но в какой-то момент половина пользователей зависла на ровном месте, пришлось удалять их через консоль администрирования...
55. user633533_encantado 11 28.09.17 11:07 Сейчас в теме
(54) "Не везде, но используются. Причем интересно то, что когда пользователь использует формы с динамическими списками и работает RLS - SQL сервер практически не загружен, но прокрутка списка продолжает тормозить... "

Было такое. Очень сильно тормозили списки и открытие формы списка могла длится минут 5.

Там в шаблонах ограничений используется слишком много полей "Организации, подразделения, группыдоступапартнеров" и т.п. А нам по факту нужно было ограничивать только по подразделениям.
Решил вопрос написанием своих ролей в которых проверялся доступ только по подразделению - работа с документами и формами увеличилась в десятки раз.
56. ger_kar 31.12.17 15:16 Сейчас в теме
Ну и чем закончилась эта эпопея? Нашли причину? Интересно узнать результат.
57. PerlAmutor 129 02.01.18 11:54 Сейчас в теме
(56) Еще не закончилась. Все продолжается.
59. herfis 498 02.01.18 14:06 Сейчас в теме
(57) Прикольно. Никаких ожиданий на блокировках в Management Studio не видно? Сервер БД и приложений на одной железке/виртуалке (в том смысле, что данные мониторинга выше по очередям диска касались обоих)?
Из "быстрых заплаток" приходит в голову только закомментировать установку безопасного режима по разделителям, если разделение данных у вас не используется. Как минимум, станет понятно, причина это или следствие (начнет виснуть на чем-то другом) и появится новая инфа для размышлений.
Еще как вариант, внимательно пройтись по правилам разделения по разделителям (кнопка "состав" в свойствах разделителя). Может, что-то намудрили для новых/измененных объектов метаданных и платформа тупит на анализе правил разделения. Но первым делом проверить блокировки СУБД.
61. PerlAmutor 129 02.01.18 15:49 Сейчас в теме
(59) К этому времени, в плане оптимизации и настроек, было сделано очень многое. Где-то пришлось принять факт поведения платформы и попытаться минимизировать вызов вещей приводящих к этому. Но остались явления, которые не поддаются анализу со стороны программиста 1С имеющего ограниченный доступ к физическому серверу. Лечатся пока полной перезагрузкой сервера. Перезагружаем его практически каждый день, когда "наступает момент тормозов".

Сегодня, например, я увидел как один из пользователей нарвался на управляемую блокировку регламентного задания по удалению помеченных объектов. Deadlock для него оказался фатальным, т.к. заблокировал документ, который остался заблокированным даже после того, как он прибил процесс клиента, сессия то осталась висеть. К слову это регламентное задание выполняется уже третьи сутки, судя по журналу что-то делает. Останавливать я его не хочу т.к. праздники единственное время, когда более менее можно провести какие-то долгие операции. А типовое удаление помеченных сделано достаточно топорно и при перезапуске будет пытаться искать ссылки на одни и те же объекты, заново снова неделю. Если бы был регистр с уже проверенными объектами и была возможность их перенести в самый конец обработки, то это бы упростило задачу...
62. herfis 498 02.01.18 16:01 Сейчас в теме
(61) А как мониторите управляемые взаимоблокировки?
64. PerlAmutor 129 02.01.18 16:10 Сейчас в теме
(62) пробовал мониторить через ТЖ, но смысла в этом не много, т.к. подвисшую сессию легко вычислить через консоль администрирования, особенно, когда в колонке "Заблокировано упр" есть номер соединения которое выставило блокировку.

P.S.: анализ ТЖ за несколько месяцев показал, что явление взаимоблокировок - достаточно редкое. Всего несколько случаев.
60. ger_kar 02.01.18 15:47 Сейчас в теме
(57) Вот наткнулся на статью необычного поведения базы, может у вас тоже, где то некорректные данные засели. Вот Ссылка на статью
Вдруг поможет.
63. PerlAmutor 129 02.01.18 16:05 Сейчас в теме
(60) Спасибо. Любопытная статья. Мы уже перестали без крайней необходимости делать динамические обновления, т.к. пришли к выводу, что этот механизм приводит к очень непредсказуемым последствиям, начиная от произвольного отключения пользователей, удалением у них пунктов навигации, невозможностью зайти в 1С вообще, и заканчивая дикими тормозами системы.

Кстати когда начал анализировать долгое получение констант в одной из них, связанной с динамическим обновлением наткнулся на список номеров сессий, которых в массиве было около 11000 штук. После её чистки, скорость её получения упала с 6 секунд до нескольких сотен миллисекунд. Сколько еще мусора может лежать в константах или пользовательских настройках одному Богу известно. И кстати чистка всех пользовательских настроек через механизм БСП в пользовательском режиме, к моему величайшему сожалению, не чистит все настройки. Приходится запускать "Инструменты Разработчика" и удалять настройки форм, отборы, параметры вариантов отчета, параметры печати - вручную. Я изучал код ERP, чтобы понять почему она не чистит все настройки пользователя, когда её просят об этом. Из логики там четко видно, что она удаляет только то о чем знает, и судя по всему, она даже не все собственные настройки знает.
65. herfis 498 02.01.18 16:40 Сейчас в теме
(63)
...список номеров сессий, которых в массиве было...

О каких сессиях в каком массиве речь? Чего чистили? Что-то я потерялся совсем.
А пользовательские настройки - да, в БСП с ними печаль. Неуниверсальненько. Тоже сталкивался. Или ИР или спец-обработки, которые на инфостарте встречаются.
(64) ""Заблокировано упр" - оооо! Как-то я эту колонку проморгал. Спасибо.
66. PerlAmutor 129 02.01.18 16:51 Сейчас в теме
(65)
К каких сессиях в каком массиве речь? Чего чистили? Что-то я потерялся совсем.

В ERP есть константа СведенияОбОбновленииИБ, в ней хранится ТаблицаЗначений, так вот в ней свыше 11000 строк было.
58. user671162_arkadiipliienko 02.01.18 12:10 Сейчас в теме
67. herfis 498 02.01.18 17:42 Сейчас в теме
Ааааа.... Это БСП-ная константа. Интересно, будем иметь в виду. Спасибо еще раз :)
68. 2C_prog 8 04.06.18 09:22 Сейчас в теме
Коллеги, не вижу сообщения о решении проблемы, поэтому оставлю свои "пять копеек", надеюсь поможет.
У нас были похожие проблемы:
1. Проверить сеть нужно обязательно, а именно до сервера AD. Как раз момент входа в базу. Замена патчкорда внезапно решила проблему. При том отследить практически нереально, доступ есть, при обращении к доменному серверу ответ получает.
2. ssd не панацея, т.к. интерфейс sata (а у вас наверняка SATA, sas ssd уж больно дорогие) накладывает некоторые ограничения на количество одновременных потоков. Можно попробовать перевести на рейд из sas hdd.
3. Куча эко-режимов в биос включено по дефолту, при том у каждого вендора они свои. Выше обращали внимание на это но мало-ли.
69. PerlAmutor 129 04.06.18 12:09 Сейчас в теме
(68) Проблема именно невидимых тормозов разрешилась сама, когда переехали на новый сервер, где нет PCI-E SSD. Думаю он и был причиной неадекватного поведения 1С.

Из побочных эффектов - работа с хранилищем конфигурации, динамическое обновление стало в 2-3 раза медленнее.

Кроме этого, где смогли, оптимизировали запросы, код проведения. В некоторых местах пришлось просто заблокировать элементы стандартных форм в ERP, чтобы пользователь не смог вызывать команды, которые приводят к плачевным последствиям, т.к. код ERP не был рассчитан на такое огромное количество данных.

И, конечно, добавили ОЗУ. Оказалось, что серверу 1С в наших условиях для комфортной работы нужно не менее: 100Гб RAM под 1С и 300Гб RAM под MSSQL. Плюс перезапуск агента 1С каждую ночь, утечек памяти много, подвисшие соединения, подвисшие блокировки и т.п частенько..

Сейчас основной проблемой стало отражение документов в рег.учете. Сплошные конфликты блокировок.

А вот с ЖР работать практически невозможно, несмотря на то, что мы его давно перевели в старый формат. Если попробовать отобрать именно по ссылке на объект, даже в пределах одного дня - фоновая задача виснет наглухо, так, что если даже удаляешь сессию в консоли администрирования, остается соединение, которое при удалении каждый раз появляется заново. Помогает только убийство rphost'ов...
tetraren; Дмитрий74Чел; +2 Ответить
70. 2C_prog 8 04.06.18 12:35 Сейчас в теме
(69) PCI-E SSD очень не плохо помогает при размещения на ней файлов базы SQL tempdb. И не страшно если помрет вдруг.
72. Skif1989 23.10.21 18:43 Сейчас в теме
(69)интересно. Проблему то нашли и устранили?
71. AlexZhukov 04.06.18 15:43 Сейчас в теме
"300 пользователей зашли и все висят после авторизации. Ждали 40 минут."
Была такая проблема из-за сервера лицензирования. Вообще программные лицензии зло, когда вставлен физический USB ключ, таких проблем не бывает.
73. tetraren 26 10.04.22 16:15 Сейчас в теме
Наблюдал такую же проблему - всё висит, а ресурсы сервера не задействованы. По всем симптомам - проблема с диском, но диск вообще не загружен. Грешил на драйвер SSD гипервизора, но в итоге ничего не помогало, или помогало временно. Тоже решилось переездом на другой сервер, все проблемы как рукой сняло.
74. cdiamond 233 13.04.22 10:08 Сейчас в теме
(73) Дело скорее не в самом диске, а как работаем с ним операционка. Для параллельной многопользовательской записи на диск существует понятие диспетчера очереди i/o, но в случае самых быстрых дисков типа nvme которые не относятся к классу enterprise эта самая очередь переключается на самую примитивную очередь типа fifo: там нет арбитража по приоритетам и объемам, диск по сути однопользовательский. В линуксе это можно перенастроить, правда в результате какой-нибудь CrystallDiskMark покажет снижение скорости записи раза в 1.5-2, но зато заработает в многопоточном режиме без фризов.
76. tetraren 26 13.04.22 14:17 Сейчас в теме
(74) Спасибо за полезную инфу, буду знать.

В моём случае система была на энтерпрайз-SSD, без рейда, на базе ESXi. Т.е. вряд ли это та самая проблема с десктопными SSD.

Немного помогло отключение vmw_ahci, т.е. вы правы, проблема скорее всего лежала не в дисках, а в гипервизоре.

Но полностью решилось после переезда на сервер с корпоративными nvme, которые (именно эта модель) с ESXi видимо работают более гладко. И переходу на ESXi 7, где работа с дисками была заметно улучшена, судя по тому, что и на другой машине совсем другой конфигурации на ESXi 7 тоже решило проблему с тормозами на SSD.
77. cdiamond 233 13.04.22 18:27 Сейчас в теме
(76) ESXi он тоже на ядре линукса работает. Утверждать не берусь, но гипервизоры младше семерки они же довольно старые уже, проблема с драйверами новых моделей дисков у вас была налицо. Тем более что у ESXi для каждой версии свой список поддерживаемого оборудования, возможно для шестерки вашего диска просто не было.
78. tetraren 26 13.04.22 18:34 Сейчас в теме
(77) Да, очень даже возможно.
75. gybson 13.04.22 12:23 Сейчас в теме
(73)обратите внимание на tempdb, как она у вас настроена и насколько соответствует рекомендациям
st.gaevoy; +1 Ответить
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот