|
Компьютерный форум OSzone.net » Серверные продукты Microsoft » Microsoft Windows NT/2000/2003 » Тормозит 1С (MS SQL). Как диагностировать? |
|
|
Тормозит 1С (MS SQL). Как диагностировать?
|
Ветеран Сообщения: 1384 |
Профиль | Отправить PM | Цитировать Здравствуйте.
Имеется сеть из 25 компьютеров, одновременно работающих с 1С. Выделенный сервер Win2003 на Xeon E5410 2.53 Ghz, 16 Gb Ram, SCSI диски, сетевой интерфейс на сервере 1 Gbit/s подключен к пассивному свитчу D-Link с 2-я гигабитными портами. Остальные клиенты подключены в этот же свитч к 100 Mbit-ным портам. База MS SQL, серверная и клиентская программы 1С работают на сервере. Папка с клиентской частью общая. Пользователи на рабочих станциях запускают программу из общей папки. Также сервер используется как сервер терминалов для работы 3-х пользователей. На одном из серверов сети установлена система мониторинга Cacti. Средняя загрузка сервера с 1С в принципе не большая: загрузка всех 8-и ядер в среднем составляет 10-15% иногда подскакивает до 30-30%. Сеть в среднем загружена на 10 Mbit/s во время начала работы в 9-00 загрузка сети возрастает до 30 Mbit/s. Меня немного смущает загрузка оперативной памяти: если перезагрузить сервер то из всей RAM используется только 8 ГБ. После 2-х недель непрерывной работы, оперативка забивается на 12-15 ГБ. Причём основные потребители это sqlserver.exe = 3.5 Гб и несколько процессов rphost.exe*32 = 7 Гб. Практически все пользователи в основном утром жалуются на "тормоза программы". Я не работаю в 1С и не представляю что там может тормозить. Но они говорят что медленно проводятся документы и делаются какие-то выборки... Корреляции тормозов системы с системными ресурсами я не замечал. Подскажите пожалуйста в какую сторону копать? Где могут быть слабые стороны системы? Как можно проверить скорость текущего обмена с жёсткими дисками? P.S. Будут интересны любые мнения. |
|
------- Отправлено: 10:57, 03-06-2011 |
Старожил Сообщения: 151
|
Профиль | Сайт | Отправить PM | Цитировать Tonny_Bennet, сталкивался с таким. Единственное у меня все на разных серверах, .т.е. терминальный, sql и 1с - это три разных сервера. Обошел,через еженочный рестарт служб SqlServerAgent, MsSqlServer и 1C:Enterprise 8.2 Server Agent.
Если надо могу привести скрипты. |
Отправлено: 11:32, 03-06-2011 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 4900
|
Профиль | Сайт | Отправить PM | Цитировать Tonny_Bennet,
В SQL ограничьте выделение оперативной памяти. "Тормозить" 1С (кстати, Вы не указали версию) из-за одновременного составления "тяжелых" отчетов и т.п., а также (в 99% случаев) - из-за кривизны написания самих процедур отчетов. |
------- Отправлено: 12:25, 03-06-2011 | #3 |
Ветеран Сообщения: 1384
|
Профиль | Отправить PM | Цитировать molodoipon, в принципе если не сложно то выложите скрипты... не мне так кому-нибудь другому понадобятся.
monkkey, если не сложно скажите где именно в SQL ограничевается выделение оперативной памяти? Для чего это нужно? И не ухудшит ли это ситуацию? На сервере по-моему крутится 2 версии 8.1 Enterprise и 8.2. Дописыванием базы занимается приходящий программист и насколько "кривые" у него скрипты я судить не могу... P.S. Достаточно серьёзно занимался программированием на С#, и когда один мой знакомый кодер узнал что код в 1С пишется на кирилице - ругался благим матом и говорил ,что в жизни писать под него не станет!!! Думаю это предрассудки.... |
------- Отправлено: 16:05, 03-06-2011 | #4 |
Misanthrope Сообщения: 474
|
Профиль | Отправить PM | Цитировать Цитата Tonny_Bennet:
|
||
------- Отправлено: 16:07, 03-06-2011 | #5 |
Старожил Сообщения: 151
|
Профиль | Сайт | Отправить PM | Цитировать Tonny_Bennet
рестарт 1С rem @echo off rem \\----- начало скрипт остановки и запуска агента сервера 1С Предприятия----\\ set logfile="stopstartlog.txt" set timeout=10 echo %date% %time% >>%logfile% net stop "1C:Enterprise 8.2 Server Agent" >>%logfile% c:\scripts\sleep %timeout% echo %date% %time% >>%logfile% net start "1C:Enterprise 8.2 Server Agent" >>%logfile% c:\scripts\sleep %timeout% rem \\----- конец скрипт остановки и запуска агента сервера 1С Предприятия----\\ echo start: %DATE% %TIME% >> C:\scripts\log\restart.log sc stop SqlServerAgent >> C:\scripts\log\restart.log TIMEOUT /T 20 /NOBREAK sc stop MsSqlServer >> C:\scripts\log\restart.log TIMEOUT /T 120 /NOBREAK sc start MsSqlServer >> C:\scripts\log\restart.log TIMEOUT /T 120 /NOBREAK sc start SqlServerAgent >> C:\scripts\log\restart.log TIMEOUT /T 20 /NOBREAK echo stop: %DATE% %TIME% >> C:\scripts\log\restart.log |
Отправлено: 18:07, 03-06-2011 | #6 |
Ветеран Сообщения: 723
|
Профиль | Сайт | Отправить PM | Цитировать ограничьте SQL 6 гигами памяти.
Тормоза у вас оттого что у него непомерный аппетит и он читает с диска т.е. из файла подкачки. |
Отправлено: 18:57, 03-06-2011 | #7 |
Ветеран Сообщения: 630
|
Профиль | Отправить PM | Цитировать Tonny_Bennet, в целях погружения в тему производительности 1С рекомендую Вам сайт Гилев - там много интересного.
На что стоит обратить внимание с ходу: - по опыту - службу 1С я перезапускал еженедельно по ночам (т.к. она непомерно начинает транжирить память) через скрипт, который сначала запускал start net stop, затем ждал 10 минут и taskkill все rphost оставшиеся в памяти... далее net start; - Вы не указали тип RAID на сервере... если у Вас RAID5 - то это тормоз для Вашей SQL базы; - дефрагментируйте диски... некоторые умельцы настраивают прирост базы SQL по 1Мб или 1%... в результате у них вся база фрагментирована; проведите shrink mdf-файла. - если у Вас на рабочем сервере висит еще пара баз, которые используются для тестов и прочих дел - это нехорошо для производительности; - общая загрузка CPU в 20-30% ни о чем не говорит - смотрите есть ли процессы, которые полностью занимают ядра процессоров. При подключении 1С сервера к базе SQL в качестве адреса следует использовать "localhost" - в этом случае обмен идет через память, а не стек TCP\IP. PS: для теста попробуйте терминально запустить 1С клиента на сервере и сравнить производительность. PS2: пассивный коммутатор Dlink - однозначно вызывает подозрения в производительности сети. |
Последний раз редактировалось QRS, 03-06-2011 в 21:09. Отправлено: 21:01, 03-06-2011 | #8 |
Ветеран Сообщения: 1384
|
Профиль | Отправить PM | Цитировать Отдал под MS SQL 6 ГБайт оперативки. Отрубил использование файла подкачки.
Цитата QRS:
Цитата QRS:
Цитата QRS:
Цитата QRS:
Цитата QRS:
Цитата QRS:
Отключил ненужные роли сервера (dns, wins). Сегодня проблем с скоростью работы базы не было т.к. на выходных сервер перезагрузил. |
||||||
------- Последний раз редактировалось Tonny_Bennet, 06-06-2011 в 17:23. Отправлено: 17:00, 06-06-2011 | #9 |
Ветеран Сообщения: 1384
|
Профиль | Отправить PM | Цитировать zero55,
Цитата QRS:
|
|
------- Отправлено: 17:28, 06-06-2011 | #10 |
|
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Друзья, помогите диагностировать проблему | EXL | Непонятные проблемы с Железом | 8 | 09-08-2010 10:21 | |
Как диагностировать "издыхающий" DVD-RW привод? | truvo | Хочу все знать | 5 | 09-10-2009 19:20 | |
Разное - [решено] *SQL* | MS SQL-2005 как узнать зависимые таблицы | pva | Программирование и базы данных | 1 | 21-09-2009 10:55 | |
Разное - *SQL* | Как получить данные HTTP->SQL | pva | Программирование и базы данных | 4 | 11-09-2009 21:49 | |
[решено] Как диагностировать и вылечить проблему со шрифтом? | truvo | Хочу все знать | 4 | 06-07-2009 14:46 |
|