powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / [игнор отключен] [закрыт для гостей] / помогите найти узкое место в системе
19 сообщений из 19, страница 1 из 1
помогите найти узкое место в системе
    #37255144
Алексей2003
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
знаю что не совсем в тот форум, но я чес не знаю в какой писать. знаю что этот подфорум просматривают спецы по оптимизации и поиску узких мест.
в кратце: есть система 1с на скуль серваке (в принципе это не важно). перегрузка штатными средствами все происходит очень медленно (тоже пофигу особо). все файлы которые задействованы пишутся на ссд диск. если снять бэкап средствами скуля, то 13гигов за минуту выгружаются, т.е. диски рабочие.. гиговый файл перегружается из одной папки в другую за 5-6сек..
главное в том, что включаю счетчик производительности, ссд диск занят на 1%, память загружена 12гигов из 16 возможных, процессор из 8 ядер работает один да и тот занят на 60%.
смотрел process mon, там чуток пишется на диск, чуток используется проц..

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

сервер 2008, скуль тоже 2008


для спящего время бодрствования равносильно сну
...
Рейтинг: 0 / 0
помогите найти узкое место в системе
    #37255212
Фотография Александр Волок (def1983)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну к примеру, что ваша перегрузка выполняется в одной сесии одним потоком, будь на вашем сервере хоть 256 ядер, все равно реально производительность будет упираться в одно ядро, которое и загужено... Конечно, в этом сценарии мы исключаем паралелизм...

Но с другой стороны, каким образом идет перегрузка внутри? милионны адхок операций? Тогда в системе бутылочное горлышко скорее всего CPU-bound...

Чтобы понять что тормозит систему начните с Wait Stats:

Чтобы сбросить статистику перед батчами:
Код: plaintext
DBCC SQLPERF ('sys.dm_os_wait_stats', CLEAR);

ну а после завершения:

Код: plaintext
1.
2.
Select  *
from	sys.dm_os_wait_stats  
order by wait_time_ms desc


Расшифровок евентов в сети много, вот один из примеров:
http://support.microsoft.com/kb/822101
...
Рейтинг: 0 / 0
помогите найти узкое место в системе
    #37255223
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ммм, а точно ресурсов не хватает? Может, все дружно на блокировках висят?
UPD: кстати, да, из wait_stats это станет видно.
...
Рейтинг: 0 / 0
помогите найти узкое место в системе
    #37255403
Алексей2003
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
короткая загрузка данных заняла 65сек. до начала загрузки сделал сброс статов и запустил запрос сразу после выполнения (задержка может быть 1-2 сек)
Код: plaintext
1.
2.
3.
4.
5.
6.
LOGMGR_QUEUE	27	156259	94677	2
REQUEST_FOR_DEADLOCK_SEARCH	14	70103	5007	70103
LAZYWRITER_SLEEP	70	70000	1014	1
SQLTRACE_INCREMENTAL_FLUSH_SLEEP	17	68119	4010	0
XE_TIMER_EVENT	2	60027	30013	60027
BROKER_TO_FLUSH	34	36035	1029	0
SLEEP_TASK	265	35006	1029	0

LOGMGR_QUEUE - Имеет место, когда задача записи в журнал ожидает рабочих запросов. (фактически айдл скуля чтоли? откуда 156 сек?)
REQUEST_FOR_DEADLOCK_SEARCH - Имеет место в случае, когда монитор взаимоблокировок ожидает запуска следующего поиска взаимоблокировки. Это ожидаемое состояние между выявлениями взаимоблокировок, и длительное общее время ожидания этого ресурса не указывает на проблему. чес не понял куда 70 сек, если 1 пользователь загружает данные где никто не работает кроме него
LAZYWRITER_SLEEP - Имеет место при приостановке задач средства отложенной записи. Представляет собой показатель времени, затраченного ожидающими фоновыми задачами. Не следует учитывать это состояние при исследовании пользовательских простоев. хорошо, не учитываем
SQLTRACE_INCREMENTAL_FLUSH_SLEEP - какойто внутренний счетчик скуля, пишут что он не показывает проблем
XE_TIMER_EVENT - тоже грят игнорировать
BROKER_TO_FLUSH - Имеет место, если модуль отложенной записи на диск компонента Service Broker производит сброс хранимых в памяти объектов передачи в рабочую таблицу. понял что ожидание записи непосредственно на диск из памяти, но куда 36сек?
SLEEP_TASK - Имеет место в случае, когда задача находится в неактивном состоянии во время ожидания универсального события. фактически спим и ждем запроса к скулю 35сек.. т.е. сервер был занят 30 сек (65-35=30). но 30 сек на нещасные 2000строк както с трудом верится и загруженностью диска 1%..
остальные счетчики меньше 100мс, забил..
...
Рейтинг: 0 / 0
помогите найти узкое место в системе
    #37255440
WarAnt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей2003,

1С сама по себе узкое место, а она у вас на том же сервере стоит гдеи скуль или на другом?
и почему вы вобще решили что чтото тормозит? было быстрее или еще чтото изменилось?
...
Рейтинг: 0 / 0
помогите найти узкое место в системе
    #37255476
Алексей2003
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WarAntАлексей2003,

1С сама по себе узкое место, а она у вас на том же сервере стоит гдеи скуль или на другом?
и почему вы вобще решили что чтото тормозит? было быстрее или еще чтото изменилось?
1. на томже.
2. всегда чтото/ктото тормозит. если система простаивает - тормозит пользователь. но так как идет перегрузка данных где не надо кликать кнопку, значит тормозит чтото в системе.
3. был обычный комп на котором перегрузка была долго (2.4ггц 4 ядра, 2гига оперативка и сата диск). купили сервер с 8 ядерным процом, 16гигами оперативки, ссд диски. прирост производительности макс 30%..
...
Рейтинг: 0 / 0
помогите найти узкое место в системе
    #37255485
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если система не в состоянии параллелить запросы, то хоть 256 процов поставь, быстрее не станет особо.
Ну и как поменялась дисковая подсистема тоже не ясно.
...
Рейтинг: 0 / 0
помогите найти узкое место в системе
    #37255509
Алексей2003
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гавриленко Сергей АлексеевичЕсли система не в состоянии параллелить запросы, то хоть 256 процов поставь, быстрее не станет особо.
Ну и как поменялась дисковая подсистема тоже не ясно.
т.е. фактически получается что 60% занят проц счетом, 40% простоя проца - операции записи с диском.
...
Рейтинг: 0 / 0
помогите найти узкое место в системе
    #37255512
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей2003Гавриленко Сергей АлексеевичЕсли система не в состоянии параллелить запросы, то хоть 256 процов поставь, быстрее не станет особо.
Ну и как поменялась дисковая подсистема тоже не ясно.
т.е. фактически получается что 60% занят проц счетом, 40% простоя проца - операции записи с диском.Запросто.
...
Рейтинг: 0 / 0
помогите найти узкое место в системе
    #37255608
a.ivanov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Алексей2003,

А что за 1С? Самописка какая нить? Перегрузка может кривая?
...
Рейтинг: 0 / 0
помогите найти узкое место в системе
    #37255652
Алексей2003
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
a.ivanovАлексей2003,

А что за 1С? Самописка какая нить? Перегрузка может кривая?
КА и доработанная какойто компанией УПП, которая обновляется регулярно. перегрузка может и кривая, писанная вручную, перегружаю только документы и в зависимости от документа справочная информация..
...
Рейтинг: 0 / 0
помогите найти узкое место в системе
    #37255694
Фотография Александр Волок (def1983)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вы привели только первые 7 строк Waitstats - причем все они - лишь шум, как *_SLEEP, приведите хотя бы первые 30...

Плюс вы так и не прояснили как у вас происходит загрузка...
Возможно это построчная вставка, типа: выдернул запись.. сделал два десятка селектов-проверок.. вставил запись.. и так в цицле...
...
Рейтинг: 0 / 0
помогите найти узкое место в системе
    #37255706
Guset
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Алексей2003 есть система 1с на скуль серваке (в принципе это не важно)
Маленько не понятно, что значит не важно. В файловом режиме 1с в принципе не способна задействовать более одного ядра. Если она работает в клиент-серверном варианте то тогда распределяет нагрузку по всем процам, если конечно в настройках это не ограничено. Также посмотрите настроки скуля сколько ему разрешено использовать ядер. Также попробуй просто выгрузить и загрузить dt в базу тестовую насколько быстро он загрузится.
...
Рейтинг: 0 / 0
помогите найти узкое место в системе
    #37255748
Алексей2003
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Александр Волок (def1983)Вы привели только первые 7 строк Waitstats - причем все они - лишь шум, как *_SLEEP, приведите хотя бы первые 30...

Плюс вы так и не прояснили как у вас происходит загрузка...
Возможно это построчная вставка, типа: выдернул запись.. сделал два десятка селектов-проверок.. вставил запись.. и так в цицле...
еще 5 строк где задержка не более 100мс, и остальные все по нулям. 1с так и работает. выдернули записи (по каждому объекту выбираются наборы строк из нескольких таблиц). и вставляются в приемник, предварительно подобрав ссылки на объекты.
...
Рейтинг: 0 / 0
помогите найти узкое место в системе
    #37255751
Алексей2003
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GusetАлексей2003 есть система 1с на скуль серваке (в принципе это не важно)
Маленько не понятно, что значит не важно. В файловом режиме 1с в принципе не способна задействовать более одного ядра. Если она работает в клиент-серверном варианте то тогда распределяет нагрузку по всем процам, если конечно в настройках это не ограничено. Также посмотрите настроки скуля сколько ему разрешено использовать ядер. Также попробуй просто выгрузить и загрузить dt в базу тестовую насколько быстро он загрузится.
читал про сервер 1сный, он не особо масштабируется на ядра. 1 пользователь - 1 ядро и привет. выгрузка и загрузка дт делается теже на 30% быстрее. но операций с дисками там поболее будет. а проц загружен меньше.
...
Рейтинг: 0 / 0
помогите найти узкое место в системе
    #37255893
Фотография Александр Волок (def1983)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей2003Александр Волок (def1983)Вы привели только первые 7 строк Waitstats - причем все они - лишь шум, как *_SLEEP, приведите хотя бы первые 30...

Плюс вы так и не прояснили как у вас происходит загрузка...
Возможно это построчная вставка, типа: выдернул запись.. сделал два десятка селектов-проверок.. вставил запись.. и так в цицле...
еще 5 строк где задержка не более 100мс, и остальные все по нулям. 1с так и работает. выдернули записи (по каждому объекту выбираются наборы строк из нескольких таблиц). и вставляются в приемник, предварительно подобрав ссылки на объекты.

Алексей, тогда у вас по сути, немаштабируемое решение...

Единственное что можно порекомендовать убрать разного рода оверхеды со стороны сиквела:

1) отключить дефолтную трасу
http://www.eraofdata.com/blog/the-sql-server-default-trace/

2) убедиться что у вас 1с ходит по Shared memory протоколу (ведь она стоит на этом же сервере)

3) отключить сбор статистики использования индексов
(-T2330)

и т.д.
...
Рейтинг: 0 / 0
помогите найти узкое место в системе
    #37256533
Crimean
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если пустите, могу попробовать посмотреть удаленно :)
...
Рейтинг: 0 / 0
помогите найти узкое место в системе
    #37257784
Crimean
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Crimeanесли пустите, могу попробовать посмотреть удаленно :)

там был не сиквел. сиквел "вяло покуривал" и даже не пытался взять дозволенную ему память.
можно переносить тему в 1с форум
...
Рейтинг: 0 / 0
помогите найти узкое место в системе
    #37258211
Фотография tpg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CrimeanCrimeanесли пустите, могу попробовать посмотреть удаленно :)

там был не сиквел. сиквел "вяло покуривал" и даже не пытался взять дозволенную ему память.
можно переносить тему в 1с форумНу, что ж... Поехали ;-)

Модератор: Тема перенесена из форума "Microsoft SQL Server".
...
Рейтинг: 0 / 0
19 сообщений из 19, страница 1 из 1
Форумы / [игнор отключен] [закрыт для гостей] / помогите найти узкое место в системе
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]