Мне было поручено повысить производительность приложения ASP.NET 2.0 .
Страница, на которой я сейчас сосредоточен, имеет много проблем, но одной из проблем, с которой я сталкиваюсь, является время рендеринга страницы. Используя Trace.axd, продолжительность между Begin Render и End Render составляет 1,4 секунды. Из MSDN я вижу, что
Все элементы управления веб-сервера ASP.NET имеют метод Render, который записывает разметку элемента управления, отправляемую в браузер.
Если бы у меня был исходный код для всех элементов управления на странице, я бы просто использовал их для отслеживания времени их рендеринга. К сожалению, эта страница имеет много элементов управления, большинство из которых сторонние. Есть ли инструмент или техника, чтобы лучше понять, что происходит во время рендеринга? Я хотел бы знать, есть ли особенно плохо работающий элемент управления или просто слишком много элементов управления на странице.
Скачайте ANTS PROFILER, это даст вам прекрасный обзор линий, вызывающих замедление.
Также, когда речь идет о рендеринге, убедитесь, что вы не используете слишком много строк (например, string + = "value"), но используете StringBuilders для повышения производительности.
<%@Page Trace="true" %>
См. Http://www.asp101.com/articles/robert/tracing/default.asp .
Это может не помочь, если проблема находится внутри одного из ваших элементов управления - как вы ожидаете - но если страница плохо спроектирована и это приводит к замедлению рендеринга, YSlow должен помочь устранить это.