Настройка производительности веб-сервера (Office SharePoint Server)

Содержание:

  • Архитектура

  • Настройка

Вы можете повысить производительность веб-серверов, если будете следовать приведенным ниже рекомендациям в отношении физической архитектуры и настройки.

Архитектура

В этом разделе представлены сведения о конфигурации, топологии и прочих аспектах веб-серверов в ферме серверов Microsoft Office SharePoint Server 2007.

Используйте в качестве веб-серверов 64-разрядные серверы

Мы настоятельно рекомендуем устанавливать веб-серверы на 64-разрядной версии Office SharePoint Server 2007 в 64-разрядной операционной системе, за исключение случаев, когда иное требуется по серьезным коммерческим причинам.

Тщательно настройте 32-разрядные серверы

При необходимости использовать 32-разрядные веб-серверы следуйте следующим рекомендациям:

  • Не используйте для 32-разрядных систем переключатель /3gb. При использовании 32-разрядных веб-серверов не рекомендуется использовать переключатель /3gb в Windows Server 2003 для замены 2 ГБ виртуального адресного пространства на 3 ГБ для всех процессов пользовательского режима. Переключатель /3gb использовать не рекомендуется, поскольку большая часть трафика сайта SharePoint связана с передачей большого объема данных через операционную систему. Следовательно, если для операционной системы оставить только 1 ГБ адресного пространства, это может дестабилизировать работу компьютера. Дополнительные сведения см. в статье базы знаний Microsoft: Параметр /3GB Windows Server 2003 не поддерживается в Windows SharePoint Services 2.0 и более поздних версиях, а также в SharePoint Portal Server 2003 SP2 или в более поздних версиях (на английском языке) (https://go.microsoft.com/fwlink/?linkid=105919&clcid=0x419) (на английском языке).

  • Совместное использование 32-разрядных и 64-разрядных серверов может повлиять на балансировку нагрузки. Можно создать среду, в которой некоторые серверы используют 32-разрядную версию Office SharePoint Server 2007, а другие — 64-разрядную версию. Однако существует риск перегрузки 32-разрядных веб-серверов, если служба балансировки в сети настроена на использование не самой подходящей модели, такой как циклическая балансировка нагрузки. Рекомендуется настроить службу балансировки нагрузки для управления распределением на основе нагрузки.

    Кроме этого, развертывание 32- и 64-разрядных серверов влечет повышение затрат на обслуживание всей фермы. Это обусловлено тем, что приложения сторонних производителей, такие как пользовательские решения, исправления и обновления ПО для двух архитектур необходимо отслеживать и обслуживать отдельно.

Не используйте веб-сады

Веб-сады — это пулы приложений IIS, поддерживаемые несколькими рабочими процессами. Они отрицательно влияют на кэширование выходных данных страницы. Следовательно, в силу сложности управления ими их использование не рекомендуется.

Обдумайте возможность использования дополнительных ресурсов для систем с большим числом активных рабочих потоков

Если в системе обрабатывается большое число активных экземпляров рабочего потока, возможно, следует увеличить объем оперативной памяти, число веб-серверов и расширить ресурсы для компьютеров, на которых запускается SQL Server 2005.

Для служб, предоставленных конечным пользователям, используйте выделенные серверы

Выделенный веб-сервер — это веб-сервер, не подключенный к службе балансировки нагрузки, выделенной для конечных пользователей. Рекомендуется использовать выделенные веб-серверы для запуска всех ресурсоемких служб, таких как:

  • Индексация поиска

  • Центр администрирования

  • Профили

  • Службы Excel

Подключите только необходимые возможности

Office SharePoint Server 2007 — это платформа, предлагающая большое число разнообразных функциональных возможностей. Ресурсы используются более эффективно при включении только тех функций, которые необходимы пользователям. Подробнее об отключении возможностей см. в документе Работа с функциональными возможностями (https://go.microsoft.com/fwlink/?linkid=105337&clcid=0x419).

Для ферм с интенсивной нагрузкой используйте проверку подлинности Kerberos

Рекомендуется использовать проверку подлинности Kerberos, если ферма обслуживает большое число запросов в течение данного периода времени, при условии что это не противоречит другим потребностям. При проверке подлинности Kerberos используется кэширование, поэтому запросы проверки подлинности быстро обрабатываются.

Примечание

У вас могут возникать задержки в процессе проверки подлинности пользователей при выполнении ресурсоемких серверных приложений на члене домена в среде Windows Server 2003. Дополнительные сведения см. в статье 906736 базы знаний Майкрософт: Ощущаются задержки в процессе проверки подлинности пользователей при выполнении ресурсоемких серверных программ в Windows 2000 или Windows Server 2003 (на английском языке) (https://support.microsoft.com/default.aspx?scid=kb;ru-ru;906736) (на английском языке).

Настройка

В этом разделе представлены сведения о конфигурации, обучении конечных пользователей и обслуживании систем, а также даются рекомендации относительно оптимизации имеющейся фермы Office SharePoint Server 2007.

Контролируйте производительность сервера SQL Server

Лучше всего контролировать производительность и ресурсы в порядке снизу вверх по иерархии, поскольку нагрузка на сервер баз данных, вероятнее всего, приводит к повышению нагрузки на веб-серверы. Например, если реакция сервера, на котором выполняется SQL Server, на запрос от веб-сервера требует существенно большего времени, а веб-сервер получает запросы от конечных пользователей с обычной скоростью, на веб-сервере начинает образовываться очередь из запросов. Это в конечном счете может создать видимость снижения производительности веб-сервера, хотя на самом деле причина кроется в сервере баз данных.

Для убедитесь, что контролируется фрагментация индекса SQL Server, и следуйте рекомендациям в отношении дефрагментации SQL Server для продуктов и технологий SharePoint, представленным в статье базы знаний Майкрософт "Как выполнить дефрагментацию баз данных Windows SharePoint Services 3.0 и SharePoint Server 2007" (на английском языке) (https://go.microsoft.com/fwlink/?linkid=105588&clcid=0x419) (на английском языке). Это позволит значительно сократить время поиска.

Примените исправление счетчика числа принудительных сборок мусора ASP.NET

При выполнении веб-приложения Microsoft ASP.NET 2.0, основывающегося на Microsoft .NET Framework версии 2.0, например, Office SharePoint Server 2007, значение числа принудительных сборок мусора растет очень быстро. Кроме этого, растет использование процессора, а производительность компьютера снижается. Для решения этой проблемы примените исправление, доступное в статье базы знаний Майкрософт "Быстрое увеличение числа принудительных сборок мусора и рост использования процессора при выполнении веб-приложения ASP .NET 2.0, основанного на .NET Framework 2.0" (на английском языке) (https://go.microsoft.com/fwlink/?linkid=105921&clcid=0x419) (на английском языке).

Настройте параметры перезапуска пула приложений для обеспечения большей доступности

Для настройки пула приложений для большей доступности следуйте рекомендациям, данным в этом разделе.

  • Если в ферме имеется несколько веб-серверов, убедитесь, что для перезапуска пулов приложений для разных веб-серверов задано разное время.

  • Для распределения нагрузки между всеми веб-серверами фермы выполняйте перезапуск веб-сайтов IIS в разное время. Если нужно одновременно перезапустить несколько пулов приложений на отдельном веб-сервере, необходимо временно удалить веб-сервер из службы балансировки нагрузки для сохранения нормальной производительности в процессе перезапуска.

  • При планировании перезапуска пулов приложений на 32-разрядных серверах учитывайте объем памяти, используемый каждым пулом приложений, и изменяйте частоту перезапуска в зависимости от используемого объема памяти. Пулы приложений, требующие меньшего количества памяти, реже требуют перезапуска.

    Управление памятью в 64-разрядных серверах более эффективно, чем в 32-разрядных серверах. Тем не менее, рекомендуется планировать перезапуск пулов приложений на 64-разрядных серверах на ночное время. Это позволит сократить вероятность проблем, вызванных фрагментацией.

Дополнительные сведения о перезапуске пулов приложений см. в разделе "Перезапуск с перекрытием и SharePoint: какие параметры использовать для 64-разрядных систем?" (https://go.microsoft.com/fwlink/?linkid=127018&clcid=0x419) (на английском языке).

Контролируйте и управляйте перезапуском 32-разрядных рабочих процессов

По умолчанию для каждого 32-разрядного процесса в режиме пользователя Windows выделено 2 ГБ виртуального адресного пространства. Некоторая часть этого адресного пространства должна оставаться неиспользованной и доступной для динамического распределения. Кроме того, некоторые операции Office SharePoint Server для динамического распределения требуют большие блоки непрерывного адресного пространства. Чем больше длится процесс, тем более фрагментированным становится адресное пространство. Из-за этого при превышении рабочим процессом Office SharePoint Server объема в 1,2-1,4 ГБ в процессе начинают возникать ошибки нехватки памяти и прочие ненормальные события. По мере продолжения процесса число и серьезность ошибок возрастает, приводя к завершению процесса службами IIS.

Важно!

В 64-разрядной среде задаваемые по умолчанию значения для перезапуска процессов обычно достаточны и изменять их не рекомендуется.

Для решения проблемы рекомендуется настроить на каждом 32-разрядном веб-сервере следующие процессы.

  • Использование перезапуска IIS с перекрытием

    Регулярный перезапуск рабочих процессов может уменьшить степень фрагментированности адресного пространства. Это приводит к общему повышению надежности и производительности процессов. Функция перезапуска с перекрытием в IIS может с успехом использоваться для перезапуска рабочих процессов SharePoint. Это обеспечивает время для завершения обработки имеющихся запросов пользователей. Перед остановкой и перезапуском существующего процесса запускается новый процесс, принимающий на себя все новые запросы. Старый процесс закрывается после завершения обработки всех исходящих запросов или по истечении заданного времени ожидания.

    Для достижения лучших результатов перезапуск IIS необходимо назначать на определенное время или по достижению определенного уровня использования памяти.

    • Настройте перезапуск при использовании 1700 МБ виртуальной памяти.

    • Настройте перезапуск при использовании 1000 МБ виртуальной памяти.

    • Задайте время ожидания перед завершением не менее 300 секунд, чтобы дать возможность завершиться длительным запросам пользователя, таким как загрузка больших файлов.

    • Используйте перезапуск на основе времени в средах с постоянной сильной нагрузкой в определенное время дня. Задайте для запланированной перезагрузки примерно 30 минут до начала пикового трафика.

    Если не настроить эти параметры на 32-разрядных серверах, это может отрицательно сказаться на управлении кэшем ASP.NET. Если не лимит памяти для процесса не задан, ASP.NET рассчитает его самостоятельно. Если адресное пространства пользовательского режима составляет 2 ГБ, ASP.NET будет использовать меньшее значение, например, 60% физической памяти или 800 МБ. Это значение будет использоваться для определения степени агрессивности очистки памяти кэшем. Задание слишком малого значения приведет к увеличению числа операций очистки памяти. Задание слишком большого значения может привести к возникновению исключений "Недостаточно памяти" и прочих ошибок.

    Дополнительные сведения о перезапуске рабочих процессов см. в разделе Настройка перезапуска рабочих процессов (https://go.microsoft.com/fwlink/?linkid=105924&clcid=0x419).

  • Включение свойства LogEventOnRecycle метабазы IIS для отслеживания перезапуска рабочих процессов

    Для отслеживания того, как выполняется перезапуск рабочих процессов, можно использовать свойство LogEventOnRecycle метабазы IIS 6.0, позволяющее создавать записи в журнале системных событий. Если обнаружится, что перезапуск процессов выполняется чаще, чем каждые четыре часа, подумайте о возможности добавления веб-серверов для уравновешивания нагрузки.

    Флаги можно установить с помощью Adsutil.vbs. Для записи причин всех процессов пула приложений в журнал событий выполните следующие действия:

    1. Нажмите кнопку "Пуск", выберите команду "Выполнить", наберите в командной строке "cmd" и нажмите клавишу ВВОД.

    2. Перейдите в папку, в которой расположен файл Adsutil. Расположение папки по умолчанию: %SYSTEMDRIVE%\Inetpub\AdminScripts

    3. Наберите следующую команду и нажмите клавишу ВВОД:

      cscript adsutil.vbs Set w3svc/AppPools/ <YourAppPoolName> /LogEventOnRecycle 255

      В команде замените YourAppPoolName именем пула приложений, для которого необходимо включить запись событий.

      Примечание

      Если в имени пула приложений присутствует пробел, например, как в имени "SharePoint- 80", заключите указываемый в команде путь к метабазе в двойные прямые кавычки, как показано в следующем примере.

      cscript adsutil.vbs Set "w3svc/AppPools/SharePoint — 80/LogEventOnRecycle" 255

    Дополнительные сведения см. в разделе Изменение событий перезапуска пула приложений в IIS 6.0 (на английском языке) (https://go.microsoft.com/fwlink/?linkid=105925&clcid=0x419) (на английском языке).

Проводите обслуживание в периоды низкой нагрузки

Перемещение или удаление сайта в то время, когда другие сайты используются и могут составлять единое целое портала, может привести к тому, что прекратит отвечать весь портал. Поэтому такие виды ресурсоемких работ следует выполнять в периоды низких нагрузок.

Не оставляйте извлеченные страницы

Если используется система управления корпоративным информационным содержимым, не оставляйте извлеченные страницы. Вместо этого, если возможно, возвращайте их как можно скорее после каждого внесения изменений. Оставленные невозвращенными страницы значительно снижают производительность механизма выдачи страниц.

Внимательно отслеживайте использование настроек и веб-частей

Разворачивать следует только те настройки, которые соответствуют рекомендациям, приведенным в следующих документах:

Кроме того, следует отслеживать веб-части и время отображения страниц. Обработка веб-части "Сотрудники" может происходить в интенсивном режиме. Ее не следует использовать на страницах, на которых отображается множество других сведений.

Отслеживайте и управляйте большими файлами

При работе с файлами размером более 5 МБ измените максимальный размер отправляемого файла в соответствии с максимальным ожидаемым размером. Максимальный размер отправляемых файлов, поддерживаемый продуктами и технологиями SharePoint, составляет 2 ГБ.

Если существует семейство больших файлов, к которым конечный пользователь обращается довольно часто, но сами файлы обновляются редко, рекомендуется хранить их за пределами Office SharePoint Server. Как альтернатива, рассмотрите возможность использования автономного клиента совместной работы.

Обучайте конечных пользователей работе с файлами большого размера

То, как конечные пользователи работают с файлами большого размера, оказывает существенное влияние на производительность всей системы.

  • У всех конечных пользователей для временных файлов Интернета (кэш Internet Explorer) должно быть выделено не менее 50 МБ дискового пространства и даже больше, если им часто приходится открывать большие файлы. Конечные пользователи, у которых не выделено дисковое пространство для хранения временных файлов, создают ощутимую нагрузку на веб-серверы.

  • Конечные пользователи, работающие с документами размером более 25 МБ, должны сохранять документы на свои локальные компьютеры. Открытие больших документов непосредственно из библиотеки документов, требует большой полосы пропускания и большого количества ресурсов, изменения в открытом документе могут автоматически сохраняться непосредственно в библиотеке документов.

    Прежде всего конечный пользователь должен щелкнуть правой кнопкой мыши документ и сохранить его на своем компьютере. После этого уже можно его открывать, вносить изменения, а по завершении работы отправить документ в библиотеку документов.

  • Конечные пользователи не должны использовать для просмотра больших файлов представление проводника. Вместо этого следует использовать представление "Все документы". При открытии библиотеки документов SharePoint в представлении проводника наведение курсора мыши на любой из файлов в перечислении приводит к запросу метаданных сразу по всем файлам в просматриваемой папке. В некоторых случаях запрашиваться могут даже файлы целиком. При одновременном просмотре больших файлов в представлении проводника это может привести к резкому увеличению нагрузки на сервер.

  • Конечным пользователям не следует использовать пункт Загрузить копию во вложенном меню Отправить меню Правка библиотеки документов. Функция Загрузить копию открывает сразу весь файл в памяти веб-сервера.

Обучайте конечных пользователей работе с библиотеками документов

То, как конечные пользователи работают с библиотеками документов, оказывает существенное влияние на производительность всей системы.

  • Конечные пользователи должны использовать настраиваемые фильтры просмотра, индексированные для работы с большими библиотеками документов, а не осуществлять доступ к библиотекам непосредственно.

  • Конечные пользователи не должны использовать для просмотра больших библиотек документов представление проводника. Вместо этого следует использовать представление "Все документы". При открытии библиотеки документов SharePoint в представлении проводника наведение курсора мыши на любой из файлов в перечислении приводит к запросу метаданных сразу по всем файлам в просматриваемой папке. В некоторых случаях запрашиваться могут даже файлы целиком. В папках, содержащих множество элементов, это процесс может отнимать много времени и негативно влиять на производительность всей фермы серверов.

  • Создавайте совместно с пользователями необходимые представления, отвечающие их конкретным нуждам, и запрещайте им самостоятельно создавать представления для работы с большими списками. Если используемое веб-приложение содержит множество крупных списков, можно отключить разрешение на управление личными представлениями для всего веб-приложения.

Управляйте крупными списками с целью повышения производительности

Продукты и технологии SharePoint поддерживают крупные списки. Однако, необходимо с особой тщательностью контролировать то, как конечные пользователи просматривают списки, чтобы не допустить негативного влияния на производительность системы.

  • Для достижения максимальной производительности не допускайте наличия более 2000 элементов в одном уровне списка (например, в корневом списке или одной папке).

  • Если необходимо создавать и просматривать крупные списки, используйте следующие рекомендации:

    • Индексируйте список по одному или нескольким столбцам.

    • Измените представление списка, используемое по умолчанию, на настраиваемое представление с фильтром со следующими (рекомендуемыми) параметрами:

      • Представление должно отображать не более 5000 элементов.

      • первый столбец, используемый для фильтрования представления, должен содержать индекс (это значительно сокращает число возвращаемых элементов).

      • Представление должно отображать только абсолютно необходимые столбцы.

      • Представление должно включать как можно меньше столбцов поиска. Каждый включаемый в представление столбец поиска создает дополнительную связь и дополнительные обращения к базе данных.

  • Оценивайте размер списка с учетом числа столбцов. Списки с большим количеством столбцов обрабатываются медленнее.

Помните, что следующие параметры и операции, могут ощутимо снизить производительность сайта с крупными списками.

  • Сложные явные разрешения (разрешения для уровне списков, библиотек, папок или документов) заставляют выполнять проверку подлинности для каждого элемента.

  • Изменение параметров проверки подлинности.

  • Создание, обновление и удаление индексов.

  • Импорт и экспорт содержимого.

  • Удаление списка.

  • Развертывание новых типов контента или обновление имеющихся типов контента.

Если существуют рабочие процессы, создающие множество задач и элементов в журнале, могут образовываться большие списки. В отношении очень активных рабочих потоков выполняйте следующие рекомендации:

  • Следите, чтобы было запущено задание таймера AutoCleanupDays для удаления завершенных рабочих потоков возрастом более 60 дней.

  • При создании сопоставлений с рабочими процессами, если ожидается интенсивное использование рабочего процесса или создание множества заданий и элементов в журнале, не используйте задания и журналы, заданные по умолчанию.

Помните, что если сайт использует большие списки, он может снизить производительность резервного копирования семейства сайтов, выполняемого с помощью средства Stsadm.

Если планируется наличие больших списков или они уже существуют, ознакомьтесь со следующими материалами:

Загрузить эту книгу

Для упрощения чтения и печати эта тема включена в следующую загружаемую книгу:

См. полный список доступных книг на веб-сайте Загружаемые материалы для Office SharePoint Server 2007.