Поделиться через


Оптимизация производительности в Project Server 2013

Сводка: Ознакомьтесь с рекомендациями по оптимизации производительности для развертывания Project Server 2013.
Относится к: Project Server 2013

Оптимизация

Этот документ и связанное с ним содержимое содержат сведения и рекомендации по настройке фермы Project Server 2013 для оптимизации производительности.

Базовая подстраивание

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

Оптимизации сервера баз данных

Учитывая, что Project Server 2013 — это приложение с большим объемом данных, оптимизация уровня базы данных может значительно повысить производительность. Общие рекомендации по оптимизации параметров SQL Server см. в SQL Server разделах по планированию и настройке емкости хранилища. Некоторые из приведенных здесь рекомендаций выделяют те, которые были сделаны в SQL Server темах:

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

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

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

Оптимизация главных проектов

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

Оптимизация параметров безопасности

Примечание. Оптимизация не требуется, если вы используете режим разрешений SharePoint.

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

Например, администраторы будут иметь доступ ко всем проектам, хранящимся в Project Server, и поэтому они должны загружать все данные при взаимодействии с ними. Участникам команды может потребоваться не доступ ко всем данным, поэтому мы можем ограничить объем отправляемых им данных с помощью категорий безопасности:

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

Оптимизация представлений

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

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

Оптимизация пользовательских полей

Влияние использования настраиваемых полей на производительность зависит от нескольких аспектов используемых настраиваемых полей (настраиваемых полей отдела и предприятия). Ниже приведены некоторые рекомендации и рекомендации, касающиеся аспектов производительности настраиваемых полей.

  • Влияние пользовательских полей на производительность будет зависеть от следующего:

    • Влияние пользовательских полей на производительность будет зависеть от следующего:

      • Количество данных, хранящихся в используемых настраиваемых полях. (Как правило, они разрежены или в заданном столбце настраиваемого поля есть большие объемы данных?)
      • Для полей формул, чем сложнее используемые формулы, тем более существенным будет отрицательное влияние на производительность.
      • Уровень, на который выполняются пользовательские поля:
    • Количество данных, хранящихся в используемых настраиваемых полях. (Как правило, они разрежены или в заданном столбце настраиваемого поля есть большие объемы данных?)

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

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

  • Как правило, рекомендуется попытаться ограничить количество используемых настраиваемых полей, особенно на уровне задачи. Как правило, старайтесь использовать менее 10–15 корпоративных настраиваемых полей уровня задач.

  • Настраиваемые поля задач и назначений являются основным узким местом при сохранении Project профессиональный на сервер в большинстве наблюдаемых наборов данных клиента.

Оптимизация локальных настраиваемых полей

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

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

Оптимизация полезных данных страниц

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

  • Ограничьте объем данных, загружаемых этими веб-частями, только данными, которые необходимо загрузить.

  • Рекомендации по полезным данным особенно важны для страниц сведений о проекте (PDP), где на данной странице, как правило, больше веб-частей и выполняется дополнительная настройка.

Оптимизация очередей

Project Server 2013 использует систему очередей для обработки того, как она обслуживает запросы, что позволяет обслуживать большее количество запросов в целом. Некоторые параметры, связанные с тем, как работает очередь, можно изменить на странице Параметры очереди. В этом разделе приводится краткое описание параметров, которые можно изменить, и способы их оптимизации в соответствии с вашими потребностями. Максимальное число потоков (1–20, по умолчанию 4). Это определяет, сколько заданий очередь может обрабатывать параллельно в любой момент времени. Обратите внимание, что это относится ко всем компьютерам в ферме. Если у вас есть три сервера приложений и для очереди проектов задано значение 4, можно одновременно обрабатывать до 12 независимых заданий проекта.

Максимальное число потоков (1–20, по умолчанию 4). Это определяет, сколько заданий очередь может обрабатывать параллельно в любой момент времени. Обратите внимание, что это относится ко всем компьютерам в ферме. Если у вас есть три сервера приложений и для очереди проектов задано значение 4, можно одновременно обрабатывать до 12 независимых заданий проекта.

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

Если у вас есть большое количество заданий, которые обрабатываются параллельно (то есть при проверке состояния очереди одновременно отображается несколько заданий в состоянии обработки), можно попробовать уменьшить число потоков.

Оптимизация процессов рабочей нагрузки

Некоторые аспекты работы и обслуживания развертывания Project Server могут помочь повысить производительность Project Server. В этом разделе рассматривается список изменений, связанных с бизнесом или ИТ-процессом, которые могут помочь повысить производительность Project Server в периоды, когда пользователи с наибольшей вероятностью взаимодействуют с системой.

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

Оптимизация рабочих процессов

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

  • Загрузка страницы "Изменение или перезапуск рабочих процессов" в параметрах сервера может занять много времени, если в базе данных хранится большое количество проектов.
  • Перезапуск или изменение EPT для большого количества проектов на странице Изменение или перезапуск рабочих процессов в параметрах сервера.
  • Процесс утверждения с очень большим числом пользователей.
  • Одновременное отправку проектов на этапе рабочего процесса без регистрации.

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

Оптимизация пользовательских решений (программируемость)

При разработке пользовательских решений, взаимодействующих с программируемыми интерфейсами Project Server, учитывайте следующие рекомендации по производительности:

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

    Примечание.

    Обработчики событий могут быть запущены на другом компьютере.

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

Пакет SDK для Project Server 2013 и связанные статьи содержат дополнительные рекомендации по поддержанию высокой производительности при разработке пользовательских решений.

См. также

Общие сведения о планировании производительности и загрузки в Project Server 2013

Стратегия планирования загрузки для Project Server 2013

Рекомендации по производительности и мощности оборудования для Project Server 2013

Топологии горизонтального и вертикального масштабирования в Project Server 2013

Оптимизация производительности в Project Server 2013

Счетчики производительности в Project Server 2013

Устранение неполадок, связанных с производительностью, в Project Server 2013

Типичные наборы данных (Project Server 2013)