В ходе эксплуатации больших и средних ферм SharePoint 2007/2010/2013, возникает вопрос — «почему первый запуск страницы, такой долгий». Зачастую администратору в ходе демонстрации приходится, объяснять пользователю о том, что портал при первом запуске доступен не моментально и придется некоторое время подождать.
Многие администраторы, следуя рекомендациям Microsoft — настраивают пулы приложений, так что бы они перезагружались минимум раз в сутки. После запуска сервера или перезапуска службы IIS, мы можем наблюдать те самые «подвисания» при первом запросе страницы. Причиной этого, является «холодный запуск» пулов и рендеринг страницы, только после обращения к ним пользователем.
Решением данной проблемы, являются скрипты и программы, выполняющие обращения к страницам SharePoint фермы, до того, как пользователи приступят к работе с узлами.
Программа SPWakeUp — http://spwakeup.codeplex.com/
Запуск SPWakeUp без опций будет искать и находить все веб- приложений вашей фермы. Каждый Web App будет в свою очередь искали семейства веб-сайтов и сайтов . После того, как список всех URL построен , SPWakeUp откроет соединение HTTP. Это восстанавливает кэш на сервере , который улучшает производительность при последующих посещениях.
Программа, так же позволяет отсылать отчеты на электронную почту, делать исключения из списка обхода и указывать данные для авторизации.
Пример скрипта на PS:
Add-PSSnapin Microsoft.SharePoint.PowerShell
$wc = New-Object net.WebClient
$wc.Credentials = [System.Net.CredentialCache]::DefaultCredentials
Get-SPSite | ForEach {$wc.DownloadString($_.url)}