Тормоза SQL сервера.

ASergey
Дата: 16.10.2003 14:05:44
Посодействуйте в решении проблемы.
Есть Машина P4 2.4/SATA/1 GIG . MSSQL 7.0 Desktop Edition SP4 , на нем крутится база 1С . Клиентов 45 человек .
Проблема в следующем: при проведении нагрузочного тестирования на 14-15 клиентах в цикле запускается один и тот же отчет . Загрузка сервера при этом составляет непрерывно 85-100% .
Если добавить еще одного клиента с этим отчетом , то сервер начинает работать с нестабильной нагрузкой , загрузка процессора скачет с 25-85%.
Если к этому добавить еще одного пользователя , то загрузка процессора сервера падает до 1-4 %, вмсете с этип падает нагрузка на все отсальное - винты и сеть . При этом клиенты не слетают , а время выполнения отчета увеличивается с 3-х мин. до 4 часов.
Если из 3-4 чел выйдут из 1С , то сервер опять работает нормально с 85-100% загрузкой стабильно.

Нарузка на винты и сеть 25-30 % при нагрузке процессора 85-100% .

В реале при работе 45 пользователей в 1С случается тоже самое .

В чем грабли ? Кто сталкивался с такими проблемами ?
Yu_kon
Дата: 16.10.2003 14:53:53
Насколько мне известно, 1с хоть и sql, но все равно логика на клиенте реализована и к тому же используется навигационный метод доступа - обрабатываются записи друг за другом, а не одним запросом.
Видимо SQL просто елозит, отрабатывая однотипные запросы в разных местах жесткого диска - нечто похожее будет, если при переписи большого файла с CD (например, просмотр avi) попробовать прочитать диск другим приложением.
Тем более что с индексами созданными принудительно 1c не дружит - злобно уничтожает.

Попробуй ради интереса вместо 1С отчета SQL запрос по индексированной таблице(ам). Почувствуешь разницу.

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

Обычно 20-40% юзеров гоняют отчеты а остальные вводят документы/проводки.

Попробуй прогон 1-2 отчетов (причем лучше разных) и автом. ввод проводок на остальных машинах.
ASergey
Дата: 16.10.2003 15:13:15
1С у нас полностью оптимизирована под MSSQL .Принцип взаимодействия только на SQL запросах .
Елозить , по одному месту на диске не прокатывает , обращения к винчестеру при нагруженном и "подвисшем" состоянии минимальны. Почему затык состоит в уменьшении нагрузки сервера почти до нуля ? Причем скачкообразно .

Такое же тестирования я провел и на 2-х процессорном сервере 2x XEON 2.2 Gh , SCSI 15000 . Результат один к одному , тоже падение при 16-18 клиентах.
Glory
Дата: 16.10.2003 15:41:06
Все что вы написали подходит для раздела "как смоделировать ситуацию". А то что вам нужно, так это запустить Profile и Performance manager и следить чем же занимается сервер в этот момент.

Кроме того использование Desktop Edition SP4 с 45-ю клиентами вызывает у меня сомнения по поводу возможностей данной редакции сервера одновременно обрабатывать запросы такого количества коннектов.
x
Дата: 16.10.2003 17:36:57
Как предположение -
Кончается память под блокировки. Сервер начинает эскалацию. Все виснет на блоках.
ASergey
Дата: 16.10.2003 18:29:04
Естественно , я проводил анализ полученных счетчиков Perfomance manager и Profiler MSSQL , результат :
Сервер Так же обрабатывает клиентов , т.е. перемещения курсоров , запросов и.т.п. но со скоростью в 100 раз меньшей .
Вот и ответ на то чем он занимается , все тем же но намного медленнее .
Отседить причину очень сложно т.к. вместе с производительностью уплывают и все другие параметры.

Как предположение -
Кончается память под блокировки. Сервер начинает эскалацию. Все виснет на блоках.

Интересное предположение , только насчет памяти нюанс -
На сервере MSSQL стоит динамическое изменение памяти (я так понимаю память под блокировки динамическая велечина и зависит от многих факторов - загруженность, кол-во клиентов и.т.п ) , а данный затык может произойти когда еще свободно более 500 Мб.
MVova
Дата: 16.10.2003 18:34:42
После установки SP4 начались непонятные тормоза, вернул назад на SP3 все пропало. Попробуй, если есть время. Хотя у нас не зависило от количества пользователей. Но ситуация похожа, загрузки процессора нет.
ASergey
Дата: 16.10.2003 18:55:39
To MVova
Вот переполз на SP3 как 1 день , посмотрим как себя поведет . :))
Mind
Дата: 17.10.2003 05:57:31
Насколько я помню Desktop Edition расчитан на 5 пользователей, а для каждого следующего создаются искуственные тормоза. Может в этом проблема?