Files
MikrotikManager/docs/ux-ui-performance.md
T

8.2 KiB
Raw Blame History

Локальная проверка производительности UX/UI

Состояние на2026-10-04; этап12.3 продолжается. Эти измерения относятся к Playwright/Edge/Next dev без CPU throttling и реальной сети. readyMs — wall clock от page.goto до готовой строки, включая компиляцию/подставной API; разные прогоны имеют разную прогретость. Это не production SLA и не p95. Fixtures проверяют UI на реальном формате DTO, но не ёмкость PostgreSQL/RouterOS.

Сценарий Размер fixture Строк в DOM до → после DOM nodes до → после Наблюдаемый dev ready до → после
Серверы 1000 ServerRead,501462 JSON bytes 1000 →50 41569 →2644 3345 →1058/1543ms
Статистика/CompactDataGrid 1000 users,88894 JSON bytes массива 1000 →50 12585 →1210 5195 →2928/1195ms
BGP 1000 полных сессий 1000 →50 25657 →1932 2990 →898ms
Очередь проблем 1000 offline servers 5 начальных,55 после раскрытия,105 после кнопки 831 начальный dashboard 1081ms; baseline до не замерялся

Профили: large-servers.spec.ts, large-statistics.spec.ts, large-bgp.spec.ts, dashboard-data.spec.ts. Измерения приложены к Playwright test results как JSON. Полные массивы всё ещё загружаются/валидируются/фильтруются на клиенте. Pagination ограничивает строки DOM, но не число pivot колонок; широкая pivot требует отдельной проверки. Порционное раскрытие очереди допускает постепенный полный список по запросу пользователя.

Оставшиеся специализированные grids

Ниже точный поиск manualPagination:true, а не заключение о дефекте: часть экранов может уже ограничивать данные API. Перед сменой режима нужно проверить читателя, общий recordCount, порядок/drag и выбор из URL. Требуемые сценарии:1000 строк, последняя страница, поиск/сортировка всего среза, обновление на второй странице, уменьшение набора, детали/URL/права,320px. Firewall нельзя слепо разбивать с потерей порядка правил; traffic требует согласовать page/limit с backend.

Файл Следующая проверка
backups-data-grid.tsx Потребитель API, контекст/детали и fixture1000
certificates-data-grid.tsx Потребитель API, контекст/детали и fixture1000
communities-data-grid.tsx Потребитель API, контекст/детали и fixture1000
data-collection-scheduler-data-grid.tsx Потребитель API, контекст/детали и fixture1000
filters-data-grid.tsx Порядок/drag и операции до ограничения DOM
firewall-rules-data-grid.tsx Порядок/drag и операции до ограничения DOM
firewall-scenario-rules-data-grid.tsx Порядок/drag и операции до ограничения DOM
gre-pools-data-grid.tsx Потребитель API, контекст/детали и fixture1000
gre-tunnels-data-grid.tsx Потребитель API, контекст/детали и fixture1000
ospf-bfd-data-grid.tsx Потребитель API, контекст/детали и fixture1000
ospf-neighbors-data-grid.tsx Потребитель API, контекст/детали и fixture1000
ospf-routes-data-grid.tsx Потребитель API, контекст/детали и fixture1000
probes-schedule-data-grid.tsx Потребитель API, контекст/детали и fixture1000
probes-speed-probes-data-grid.tsx Потребитель API, контекст/детали и fixture1000
recursive-routes-data-grid.tsx Потребитель API, контекст/детали и fixture1000
route-optimizer-comm-recs-data-grid.tsx Потребитель API, контекст/детали и fixture1000
route-optimizer-full-routes-data-grid.tsx Потребитель API, контекст/детали и fixture1000
route-optimizer-ospf-preview-data-grid.tsx Потребитель API, контекст/детали и fixture1000
route-optimizer-wan-matrix-data-grid.tsx Потребитель API, контекст/детали и fixture1000
subusers-data-grid.tsx Потребитель API, контекст/детали и fixture1000
traffic-flows-data-grid.tsx API page/limit, manualSorting и общий счётчик
uptime-resources-data-grid.tsx Потребитель API, контекст/детали и fixture1000
uptime-speed-history-data-grid.tsx Потребитель API, контекст/детали и fixture1000
users-data-grid.tsx Потребитель API, контекст/детали и fixture1000
vxlan-data-grid.tsx Потребитель API, контекст/детали и fixture1000
wireguard-data-grid.tsx Потребитель API, контекст/детали и fixture1000
wireguard-peers-grid.tsx Потребитель API, контекст/детали и fixture1000

Всего27 специализированных grids; ни один из этого перечня не принят этим документом на больших данных. CompactDataGrid дополнительно проверен на повторном получении100 active probes: страница сохраняется; сокращение100→1 ограничивает индекс. Следующая группа12.3.6 — uptime-resources/probes-speed/probes-schedule, затем сетевые/admin grids по профилям. Общий журнал: ux-ui-progress.md.

12.3.6:1000 speed probes baseline —1000 rendered rows/23590 DOM nodes/3741ms dev ready; профиль collector-probes4 cases и ESLint прошли. Далее12.3.7 ограничение DOM speed grid; этот baseline не означает принятую производительность.