Рекомендации по профилированию приложения SharePoint
-
04-07-2019 - |
Вопрос
Когда приложение SharePoint, над которым вы работаете, имеет неудовлетворительное время отклика, как вы точно определяете причины и в какой последовательности?Пока я еще не нашел никаких инструментов профилирования с открытым исходным кодом или коммерческих, специфичных для сегмента SharePoint, поэтому буду признателен за любой указатель на инструменты или рекомендации.
PS.Мне известны параметры профилирования для веб-частей, но я ищу что-то, что охватывает все приложение.
Решение
Мой совет - обратить внимание на следующее:
Уровень данных Проверьте и посмотрите, работает ли ваша база данных с перебоями и какие запросы занимают много времени.90% всего, что вы видите в SharePoint, хранится где-то в базе данных.Запустите SQL Profiler на несколько часов и изучите свои журналы.
Семейства сайтов Я обнаружил в SharePoint, что чем глубже вы упорядочиваете свои сайты и семейства сайтов, тем больше снижается производительность.Это чисто анекдотический случай, так что отнеситесь к нему со всей серьезностью.
Кроме этого, я не знаю многих инструментов профилирования SharePoint.Мой опыт работы с SharePoint подтолкнул меня отказаться от тяжелой работы по настройке и перейти к использованию более функционального OOTB.Я редко рекомендую использовать SharePoint в качестве платформы приложений.
Удачи!
Другие советы
В RedGate есть документ о профилировании всего семейства сайтов Sharepoint с использованием профилировщика ANTS:
В настоящее время я оцениваю это, поэтому не могу сказать, работает ли это и насколько это хорошо.Однако убедитесь, что вы используете версию 4.1, чтобы иметь возможность профилировать IIS 6.0 на портах ниже 1024.Разрешения Windows, возможно, немного "странноваты" в настройке, но, как уже было сказано, я все еще оцениваю это сам и не могу сказать, насколько хорошо это работает.
ознакомьтесь с инструментом под названием Sonar от Binary Wave.В нем содержится подробная информация о том, что требует времени для загрузки на вашу страницу SharePoint:
http://www.binarywave.com/products/sonar/default.aspx
Есть бесплатная облегченная версия, которую вы можете попробовать.
HTH Ник Свон
Как сказал Майкл выше, Red Gate ANTS Profiler - отличный инструмент для профилирования вашего кода SharePoint.
Мой пост здесь показывает, насколько легко запустить его, хотя вы могли бы возразить, что он нацелен на ваш конкретный код, можно протестировать проблемы с производительностью, когда заполняются такие вещи, как большие списки.Но если вы разбираетесь в этой области, то на самом деле вам нужен не профилировщик, а нечто большее при нагрузочном и масштабном тестировании.
http://www.21apps.com/sharepoint/code-profiling-ants/
Надеюсь, это поможет.
Эндрю
К сожалению, большая часть разработки Sharepoint примитивна.Для чего-то вроде того, что вы хотите, я бы перенес логику и области, которые вы считаете медленными, в отдельную программу, а затем использовал веб-службы для извлечения данных из Sharepoint, чтобы их можно было протестировать.
Если это не так, то начните устанавливать кучу таймеров вокруг кода, в котором вы не уверены, и печатать выходные данные.
У меня было успешное профилирование SharePoint 2010 с помощью Профилировщик EQATEC.Бонус заключается в том, что у них есть бесплатное издание.
Шаги по его настройке здесь:http://blogs.visigo.com/chriscoulson/performance-profiling-a-sharepoint-2010-project-using-eqatec-profiler/
Вы можете использовать встроенные инструменты профилирования в Visual Studio: http://msdn.microsoft.com/en-us/library/hh322089.aspx
"В этом пошаговом руководстве показано, как использовать инструменты профилирования в Visual Studio для оптимизации производительности приложения SharePoint.В Примером приложения является приемник событий компонента SharePoint, который содержит цикл ожидания, который снижает производительность компонента приемник событий.Профилировщик Visual Studio позволяет вам находить и устранять самую дорогостоящую (самую медленную по производительности) часть проекта, также известную как "горячий путь"."