Утро, когда все внезапно стали специалистами по серверам

В девять утра менеджер открывает заказ К-204. Курсор крутится. Через минуту к столу подходит кладовщик: у него подбор тоже ждёт. Бухгалтер сообщает, что вчера «всё летало». Директор слышит знакомую версию: сервер слабый.

Новый сервер уже почти выбран. Остаётся мелочь: никто пока не знает, чего именно не хватает старому.

На складе такой диагноз выглядел бы забавно. Фура стоит сорок минут, а начальник сразу заказывает более мощный погрузчик. Потом выясняется, что погрузчик исправен, весы одни, ворота заняты, а маршрутная ведомость отправляет водителя трижды через весь склад.

С 1С происходит то же самое. Одна операция проходит несколько участков. Каждый участок способен задержать результат. Ускорение начинается с хронометража одного маршрута.

Фраза «1С тормозит» похожа на «фура долго ехала». Причина находится хронометражем конкретного маршрута.

Как одна партия проходит склад

Возьмём партию К-204. Её нужно найти в журнале, достать из ячейки, проверить, взвесить, оформить и вывести через ворота.

Нормальный маршрут выглядит так:

  1. Диспетчер принимает заявку на партию.
  2. Кладовщик находит ячейку по картотеке.
  3. Погрузчик привозит паллету на рабочую площадку.
  4. Контролёр сверяет вес и состояние.
  5. Диспетчер записывает результат в журнал.
  6. Ворота выпускают машину.

Теперь представим, что отгрузка заняла сорок минут. Причины могут быть разными. Картотека ищет нужную строку полчаса. Погрузчик занят другой партией. Паллету поставили в дальний ряд. Контролёр держит единственный ключ от зоны проверки. Диспетчер заполняет ведомость из двухсот граф, половина которых никому не нужна.

Фраза «склад медленный» не показывает участок задержки. Фраза «между поиском ячейки и выдачей задания погрузчику проходит 28 минут» уже годится для решения.

Синхрон: склад и 1С

№Склад с картошкой1СКакой след измеряем
1Диспетчер принял заявку К-204пользователь запустил командуточное время нажатия
2Картотека ищет ячейку и накладные1С читает данные и выполняет запросыдлительность запросов, ожидание базы
3Логист выделяет кладовщика, погрузчик и площадкусервер распределяет процессор, память и рабочие процессызагрузка ресурсов и очередь задач
4Паллета едет из ячейки на участок проверкиданные идут по сети между клиентом, сервером 1С и базойзадержка и устойчивость соединения
5Контролёр ждёт доступ к весам или журналуоперация ждёт блокировку либо внешний ответкто удерживает ресурс и сколько длится ожидание
6Диспетчер оформляет результат и отдаёт накладную1С формирует форму, отчёт или документвремя до готового результата

У каждого этапа один смысл. Погрузчик похож на вычислительный ресурс. Картотека похожа на поиск данных. Занятые ворота похожи на блокировку. Дальний склад похож на медленное хранилище или связь. Длинный регламент похож на тяжёлую логику операции.

Схема: хронометраж одного рейса

Эту схему следует рисовать как маршрутный лист с полосой времени. Она отличается от двухдорожечной карты статьи про обмен: главный объект здесь — длительность каждого участка.

Заявка К-204
    │
    ├─ 1. Принять заявку ─────────────── 1 минута
    ├─ 2. Найти данные ───────────────── ?
    ├─ 3. Получить ресурс ────────────── ?
    ├─ 4. Передать данные ────────────── ?
    ├─ 5. Дождаться занятого участка ─── ?
    └─ 6. Показать результат ─────────── ?

            Самая длинная полоса = участок для проверки

В статье числа заменяются фактическими измерениями конкретной компании. До измерения вместо цифр стоит «неизвестно». Нарисованная для примера минута не служит нормативом.

На складе рядом с полосами стоят названия участков. Под ними располагается перевод: «картотека — запросы», «погрузчик — вычисления», «дорога — сеть», «занятые ворота — блокировка».

Первая развилка: что именно медленно

Один и тот же симптом приводит к разным проверкам.

Медленно только на одном компьютере

Остальные сотрудники выполняют тот же сценарий в обычном темпе. Подозрение падает на рабочее место, локальную сеть, подключение, клиент 1С или настройки конкретного пользователя.

Складская модель: одна машина едет к исправному складу по разбитому боковому проезду. Расширение центральных ворот ей не поможет.

Медленно всем пользователям

Общий участок маршрута стал узким. Проверяют сервер 1С, систему управления базой данных, сеть, хранилище, блокировки и общую нагрузку.

Складская модель: очередь образовалась перед общими весами. Все погрузчики могут быть исправны, но результат они получают по одному.

Медленно только одно действие

Главный кандидат — маршрут самой операции: запрос, отчёт, обработка, форма, объём данных или ожидание связанной системы.

Складская модель: обычные партии уходят вовремя, а К-204 по инструкции возят на весы, обратно в ячейку, затем снова на весы. Погрузчик не ленится. Маршрут составлял очень старательный человек.

Медленно в определённое время

Нужно сопоставить задержку с резервным копированием, обменами, отчётами, регламентными заданиями, антивирусной проверкой и пиковым числом пользователей.

Складская модель: в 14:00 к одним воротам одновременно приезжают пять машин, ревизор и поставщик тары. В 11:00 те же ворота свободны.

Дерево проверки

Операцию можно повторить на одном контрольном заказе?
├─ Нет → записать симптом, время и условия; не строить вывод по ощущениям
└─ Да
   └─ У других пользователей тот же сценарий медленный?
      ├─ Нет → проверить рабочее место, подключение и профиль пользователя
      └─ Да
         └─ Медленны все действия?
            ├─ Нет → измерить конкретный запрос, отчёт или обработку
            └─ Да
               └─ Задержка связана с определённым временем?
                  ├─ Да → сопоставить с общей нагрузкой и заданиями по расписанию
                  └─ Нет → измерить общие ресурсы, ожидания и доступ к данным

Физические вопросы рядом с техническими:

  • «Все машины стоят?» — «Всем пользователям медленно?»
  • «Только рейс К-204 идёт долго?» — «Только одна операция медленная?»
  • «Очередь появляется после обеда?» — «Есть зависимость от времени?»
  • «На каком участке рейс потерял больше всего времени?» — «Где длительность операции выросла?»

Что видит бизнес

Замедление редко остаётся внутри компьютера. Склад позже получает задание. Менеджер открывает несколько окон и повторяет нажатия. Клиент дольше ждёт ответ. Сотрудники переходят к таблицам и звонкам. Повторные действия создают лишнюю нагрузку и новые ошибки.

Руководителю полезны четыре факта:

  • какая бизнес-операция задерживается;
  • сколько сотрудников затронуто;
  • когда началось изменение;
  • какой этап маршрута занимает время.

Фраза «тормозит уже давно» фиксирует раздражение. Для ремонта нужен воспроизводимый сценарий.

Что проверяет специалист

Специалист берёт одну операцию и раскладывает её время. Для файловой базы и для клиент-серверной системы состав участков различается, поэтому сначала определяют режим работы.

Дальше проверяют:

  • время выполнения одного сценария на разных рабочих местах;
  • число затронутых пользователей;
  • нагрузку на процессор, память, диск и сеть в момент задержки;
  • длительные операции и ожидания блокировок;
  • запросы к данным и объём результата;
  • фоновые и регламентные задания;
  • изменения, которые совпали с началом проблемы;
  • ответы внешних сервисов, если операция их ждёт.

Высокая загрузка ресурса показывает участок для изучения. Она ещё не объясняет причину. Например, процессор может работать много из-за тяжёлого запроса, а добавление памяти этот запрос не исправит.

Что можно сделать безопасно

  1. Выбрать одно понятное действие: открыть заказ, провести документ, сформировать конкретный отчёт.
  2. Записать время начала и появления результата.
  3. Проверить тот же сценарий у другого пользователя, если бизнес-процесс это допускает.
  4. Записать дату и время, число затронутых людей и точный текст сообщения.
  5. Сохранить скриншот и номер контрольного документа.
  6. Сообщить, что менялось перед появлением задержки: обновление, новый отчёт, обмен, оборудование, сеть.

Эти действия не меняют данные и сохраняют следы для диагностики.

Стоп-действия

До замеров и плана возврата не следует:

  • покупать оборудование по одному общему симптому;
  • массово завершать сеансы пользователей;
  • перезапускать серверы в рабочее время без понимания активных операций;
  • удалять временные файлы и кэши как универсальное лекарство;
  • запускать исправление или перестроение базы на рабочем экземпляре;
  • отключать регламентные задания без списка их назначения;
  • повторно нажимать проведение и формирование отчёта много раз подряд.

Перезапуск способен временно убрать очередь и одновременно стереть удобный момент для наблюдения. После него фраза «стало быстрее» не показывает исходную причину.

Как выглядит результат диагностики

После нормального разбора остаётся хронометраж одного сценария:

  • операция и контрольный документ;
  • начало и конец каждого участка;
  • доказанное узкое место;
  • влияние на пользователей и бизнес;
  • изменение с планом возврата;
  • повторный замер по тому же сценарию;
  • критерий успешности, согласованный до изменения.

Покупка сервера становится обоснованным решением, если измерение показало нехватку конкретного ресурса и другие причины исключены. Если задержку создаёт маршрут операции, исправляют маршрут.

Покажите одно сообщение и одну операцию

Восстановим маршрут, найдём последнюю подтверждённую точку и определим безопасный следующий шаг.

Обсудить ситуацию