| Параметр | Команда PowerShell / sqlcmd | Значение | Норма / примечание |
|---|---|---|---|
| 👥 Активных пользователей (пик) | оцените по журналу 1С |
ключевой параметр | |
| 💾 Размер всех БД (ГБ) | sqlcmd -Q "SELECT CAST(SUM(CAST(size AS bigint)*8)/1024.0/1024 AS DECIMAL(10,1)) FROM sys.master_files WHERE database_id>4" -W |
влияет на кэш | |
| ⚡ Интенсивность нагрузки | анализ типовых операций |
тяжёлая +40% ресурсов | |
| 🖥️ Логических ядер CPU | (Get-CimInstance Win32_ComputerSystem).NumberOfLogicalProcessors |
для 1С+MSSQL ≥4 ядер | |
| 📈 Загрузка CPU (%) | (Get-CimInstance Win32_Processor | Measure-Object -Property LoadPercentage -Average).Average |
<70% в пик | |
| 💿 Общий RAM (ГБ) | [math]::Round((Get-CimInstance Win32_ComputerSystem).TotalPhysicalMemory/1GB,0) |
≥16 ГБ для малых БД | |
| 🧠 Свободно RAM (ГБ) | [math]::Round((Get-CimInstance Win32_OperatingSystem).FreePhysicalMemory/1024/1024,1) |
>10% от общего | |
| 🔄 Используемый pagefile (ГБ) | [math]::Round((Get-CimInstance Win32_PageFileUsage).CurrentUsage/1024,1) |
0 – идеал, >2 – проблема | |
| 💽 Очередь диска (avg) | (Get-Counter '\PhysicalDisk(_Total)\Avg. Disk Queue Length').CounterSamples.CookedValueЕсли ошибка на Windows 10/11: используйте Диспетчер задач → Производительность → диск и введите значение вручную. Для восстановления счетчиков: lodctr /r (требует админа) |
<2 – норма; ≥2 – высокая очередь. Для Windows Server команда работает, для клиентских ОС – через Диспетчер задач. | |
| 💾 Латентность диска (мс) | (Get-Counter '\PhysicalDisk(_Total)\Avg. Disk sec/Transfer').CounterSamples.CookedValue * 1000Если ошибка на Windows 10/11: оцените визуально в Диспетчере задач → Производительность → диск (время отклика). Для восстановления счетчиков: lodctr /r (требует админа) |
NVMe <2 мс, SSD <10 мс, HDD <20 мс. Для Windows Server команда работает, для клиентских ОС – через Диспетчер задач. | |
| 🖥️ Тип дискового массива | Get-PhysicalDisk | Select FriendlyName,MediaType,BusType | Format-Table |
Влияет на пороги латентности | |
| 📊 SQL Server Buffer cache hit % | sqlcmd -Q "SELECT ROUND((a.cntr_value*1.0/b.cntr_value)*100,2) FROM sys.dm_os_performance_counters a JOIN sys.dm_os_performance_counters b ON a.object_name=b.object_name WHERE a.counter_name='Buffer cache hit ratio' AND b.counter_name='Buffer cache hit ratio base'" -W |
>98% – отлично | |
| 📈 Page Life Expectancy (сек) | sqlcmd -Q "SELECT cntr_value FROM sys.dm_os_performance_counters WHERE counter_name='Page life expectancy' AND object_name LIKE '%Buffer Manager%'" -W |
>300 с – норма, >1000 – отлично | |
| 🐢 Медленные запросы | sqlcmd -Q "SELECT TOP 5 total_elapsed_time/execution_count/1000 AS avg_ms, text FROM sys.dm_exec_query_stats CROSS APPLY sys.dm_exec_sql_text(sql_handle) ORDER BY avg_ms DESC" -W |
требуют индексов/статистики | |
| 🌐 Сетевые ошибки | Get-NetAdapterStatistics | Select-Object Name, OutboundErrors, InboundErrors(посмотрите на наличие ненулевых ошибок) |
должны быть 0 |
.mdf, .ldf, .ndf), рабочие каталоги 1С, а также tempdb в исключения. Сканирование этих файлов в реальном времени критически снижает производительность.min(количество ядер CPU, 8) файлов одинакового размера). Включите флаг трассировки TF 1117 и TF 1118.