Я вхожу в PerfView для анализа производительности для своих приложений (C#). Но обычно эти приложения используют множество запросов к базе данных. Итак, я задал себе следующие вопросы: - Сколько времени потрачено на репозитории? - (Сколько времени уходит на ожидание возврата SQL-запросов?) -> Я не знаю, можно ли это открыть с помощью PerfViewPerfView: анализ производительности приложения, включая вызовы базы данных
Но из моих следов я получаю практически ничего полезного. В представлении «Any Stacks» это говорит мне (когда я использую группировку в моем репозитории), что 1,5 секунды потрачено на мой Repsoitory (весь вызов составляет около 45 секунд). И я знаю, что это не так, потому что репозитории называет базу данных LOT.
Является ли это то, что показатель ЦП не учитывается при ожидании завершения SQL-запросов, потому что CPU не имеет ничего общего с этим периодом времени, и поэтому мои времена включают в себя только время преобразования данных и т. Д. В репозиторий?
Спасибо за помощь!
EDIT:
Что я пропустил превращаюсь в варианте раза нити, чтобы получить времена заблокированного кода (что то, что происходит во время обращений к базе данных я полагаю). Теперь у меня есть все стеки, просто отфильтруйте неинтересные вещи. Но я, кажется, никуда не денутся.
Что особенно интересно для меня при использовании «Thread Time» - это BLOCKED_TIME. Но с этим время я думаю. Когда вы смотрите на скриншот, он сообщает мне, что CPU_TIME составляет 28 384. Что такое миллисекунды (afaik), но BLOCKED_TIME составляет 2 314 732, что не может быть миллисекундами. Так что процент для CPU_TIME очень низкий с 1,2%, но 28 из 70 секунд по-прежнему много. Таким образом, время Inclusive Percentage сравнивает яблоки и апельсины здесь. Может кто-нибудь объяснить?
вы должны создать свой собственный EventSource и поднять свое собственное событие при запуске и остановке всех действий. Теперь запишите эти события, и здесь вы можете рассчитать продолжительность. – magicandre1981
Это не обязательно. Я не делаю ничего необычного. Также я обновил свой вопрос с помощью некоторых новых идей. – cmart
нет, вы должны сделать это таким образом. – magicandre1981