Я занимаюсь разработкой большого набора данных для приложения ASP.Net/Windows, использующего Microsoft SQL Server 2005 через LINQ2Sql. Производительность - это всегда проблема.Советы по ведению журнала производительности
В настоящее время приложение разделено на несколько больших обрабатывающих частей, каждый из которых регистрирует продолжительность их работы. Это не детализировано и ничего не помогает. Было бы неплохо иметь несколько таблиц базы данных, которые содержат статистику, которую само приложение собирает из своего собственного поведения.
Какие советы по регистрации и структуры данных вы рекомендуете выявлять детали, которые вызывают проблемы с производительностью?
Редактировать: В основном я ищу части приложения, которые могут повредить всю систему при чрезмерном использовании. Есть пики в течение дня, когда некоторые части приложения находятся под большой нагрузкой. Некоторые расширенные протоколирования помогут мне изолировать части, которые нуждаются в большем внимании и оптимизации.
Возможно, вы также захотите изучить SmartInspect (также поддерживает PostSharp), поскольку он поддерживает таймеры с высоким разрешением. –
В дополнение к высокоуровневому декларационному протоколу производительности, о котором упоминал Джон, Loupe (ранее Гибралтар) автоматически собирает десятки полезных счетчиков производительности с незначительным воздействием на производительность и интегрируется с мониторингом работоспособности ASP.NET для вашего сайта, а также поддерживает ведение журнала и мониторинг производительности для вашего Служба Windows. Лучше всего, Loupe Desktop (ранее аналитик Гибралтара) теперь БЕСПЛАТНО. Подробнее о нашем блоге: http://rocksolid.gibraltarsoftware.com/announcements/our-best-log-viewer-is-now-free –