在 Project Server 2010 中规划硬件体系结构

 

适用于: Project Server 2010

上一次修改主题: 2015-03-09

许多因素会对 Microsoft Project Server 2010 中的吞吐量产生主要影响。这些因素包括用户数量;用户操作的类型、复杂性和频率;操作中的回发数量;以及数据连接的性能。在规划硬件体系结构时,您应仔细考虑本节中讨论的因素。可以采用多种方式部署和配置 Project Server。因此,没有简单的方法可以估计给定数量的服务器可以支持的用户数量。因此,请确保在生产环境中部署 Project Server 2010 之前,在您自己的环境中进行测试。

本文介绍了 Microsoft Project Server 2010 的测试性能和容量限制,并提供了有关测试环境和测试结果的信息,以及可接受性能的准则。可以使用本文中的信息来评估 Project Server 的吞吐量目标。

在规划 Microsoft Project Server 2010 的容量时,请注意会影响 Project Server 部署的性能的变量。

由于 Project Server 提供了丰富的功能集,因此,在较高层面看上去似乎相同的部署在实际性能特征方面会存在重大差异。仅根据项目数或系统中包含的用户数来了解需求的特点是不够的。考虑 Project Server 部署的性能需要一种更微妙、更全面的方法。例如,工作负荷以及随后的硬件需求在涉及到以下变量时会有所不同:

因素 特征

项目

  • 项目数目

  • 有关任务的典型项目大小

  • 项目级别自定义字段的数目

  • 任务之间的链接级别(依赖项)

用户

  • 用户并发。有多少用户同时命中系统?平均负载和流量高峰的含义是什么?

  • 用户具有哪些安全权限?这将影响服务器在给定时间内需向用户提供的数据量,以及服务器必须执行的安全检查的复杂性。

  • 用户的地理分布。当用户分布在较大的地理区域时,网络延迟会对性能产生不利影响。这还将影响使用模式,因为用户可能会在一天的不同的时间命中服务器,从而使得更难以找到运行维护任务(如备份、报告或 Active Directory 同步)的低流量时段。

使用模式

  • 工作负荷条件。通常会使用哪些功能?例如,大量使用时间表的部署具有的特征与不使用时间表的部署的特征不同。

  • 页请求之间的平均时间

  • 平均会话时间

  • 页面负载。给定页面上具有多少个 Web 部件?这些 Web 部件包含多少数据?

在给定环境中影响性能的因素会有很多,并且其中每种因素可影响不同领域的性能。本文中的一些测试结果和建议可能是针对您环境中并不存在的功能或用户操作,因此它们并不适用您的解决方案。只有在经过全面的测试之后,才能得出与您自己的环境相关的准确数据。

要考虑的其他变量:


  • **用户并发:**并发用户负载通常是设置容量要求时需考虑的一个重要因素。虽然您系统中包含的用户可能较少,但在“高峰”流量时段,所有这些用户都可以同时与服务器进行交互。例如,其所有用户在周中的同一时间提交状态/时间表更新的组织可能会发现,性能在此时段内出现了明显的降低。如果您的高峰使用时段较长,可以规划向建议的数据集拓扑中添加更多资源。


  • **用户角色的拆分:**管理员、项目组合管理员、项目经理和工作组成员之间的用户的分发将影响您的部署性能,因为每类用户可访问的数据量不同。不同的安全类别中的用户可查看的项目数和资源数是不同的。例如,对于管理员而言,当其加载项目中心时,可以查看服务器上的所有项目;当其加载资源中心时,可以查看服务器上的所有资源。相比之下,项目经理只能查看其自己的项目。这样一来,这些用户便会发觉性能降低。如果可能,建议您通过在“服务器设置”>“管理视图”中定义的视图中定义适当的筛选器,来限制给定视图中显示的项目数、任务数或资源数。


  • 用户的全局分布


  • **问题、风险和可交付结果:**具有大量此类实体会给 SQL Server 造成额外的负载。特别是在 Project 网站中查看这些实体并与之交互时,很可能会产生额外的负载。如果您大量使用这些功能,则您可能需要分配额外的资源来部署 SQL Server,以便维护高级性能。假定这些项目和 Project 网站功能为 SharePoint 网站和列表,请参阅与扩展 SharePoint 网站和列表相关的文档。


  • **日历:**可为项目、任务和资源定义自定义日历。自定义日历会对计划引擎产生较大影响,造成使应用程序服务器和数据库服务器上较高的 CPU 使用率。

典型数据集

本节介绍的数据集以下表列出并解释的变量为特征。这些变量可能不会捕获所有影响 Project Server 的性能的因素(即,它们不会捕获您打算在部署中使用的功能组合)。但是,这些变量将捕获对于确定适当容量很重要的多数信息。

实体 说明/注释

1

项目

100

5000

20000

1

任务

17125

856250

3425000

1

每个项目的平均任务数

171.25

171.25

171.25

2

任务事务历史记录

要为任何给定任务提交和审批状态的次数

10

100

1000

1

工作分配

22263

1113125

4500000

1

每个任务的平均工作分配数

1.3

1.3

1.3

2/3

批准

每个管理器的挂起更新数

50

600

3000

用户

1000

10000

50000

自定义字段

项目(公式)

3

20

25

自定义字段

项目(手动)

2

40

50

自定义字段

任务(公式)

任务公式字段往往会对性能造成最大损失,因为需要为每项任务计算这些字段。

6

12

15

自定义字段

任务(手动)

4

8

10

自定义字段

工作分配下滚

50%

50%

50%

自定义字段

资源

10

20

25

自定义字段

查找表自定义字段

2

15

100

1

时间表(每年)

使用时间表的次数越多,SQL Server 上需要的资源就越多

52000

780000

8,320,000

1

时间表行

5

10

10

硬件建议

以下各节提供了一般性能和容量建议。可以使用这些建议来标识满足您要求的起始拓扑,并确定是否必须向外扩展或向上扩展起始拓扑。

在本文中,我们引用了在 Windows Server 中设置的三个不同的角色:Web 前端服务器角色、应用程序服务器角色和数据库 (SQL) 服务器角色。它们都是完整 Project Server 2010 部署的组件。Web 前端服务器充当访问 Project Server 的用户的接口。应用程序服务器将处理对 Project Server 的数据层的请求,并实现 Project Server 2010 的业务逻辑。最后,数据库层是包含 Project Server 2010 数据库的数据源。对于小型部署,可以在同一物理计算机上组合 Web 前端服务器、应用程序服务器和数据库服务器角色。对于大型部署,必须将这些角色分别置于单独的计算机上(即使多个物理计算机担当同一角色也是如此)。

小型数据集硬件建议

本节为前面的“典型数据集”一节中所概括的每个小型、中型和大型数据集大小建议了一个拓扑。为每个数据集建议的拓扑对于这些数据集的大多数使用情况应该足以获得合理性能。不过,我们鼓励您考虑本文的其余内容中提供的特定建议,以确定是否需要扩展为近似数据集建议的拓扑。通常,您应监视拓扑的性能指标,并且如果您对性能特征感到不满意,则可以相应地扩展拓扑。

请注意,由于 Project Server 2010 与 SharePoint Server 2010 共存,它将使用附加资源(处理器、RAM 和硬盘)。SharePoint Server 2010 的准则要求也适用于具有小型数据集和低使用率 的 Project Server 2010 安装。但是,对于更重要的数据集和使用模式,则需要额外的硬件资源。对于具有小型数据集的独立计算机上的部署,建议使用 16 GB RAM 以确保检测到高级性能。除此之外,如果可能,建议您通过将数据库置于运行 SQL Server 的专用计算机上,来将数据库服务器从应用程序和 Web 前端层中分离出来。

下表列出了具有内置数据库安装和服务器场安装(包括服务器场中的单个服务器或多个服务器)的单服务器的规格。

前端 Web/应用程序服务器

组件 建议的配置

处理器

64 位,四核,每核至少 2.5 GHz

RAM

4 GB 供开发人员或评估使用,8 GB 供单服务器和多服务器的服务器场安装的生产使用

硬盘

80 GB

SQL Server

组件 建议的配置

处理器

64 位,四核,每核至少 2.5 GHz(如果您的数据集比中型数据集大得多,建议使用八核。)

RAM

4 GB 供开发人员或评估使用,8 GB 供单服务器和多服务器的服务器场安装的生产使用

硬盘

80 GB

中型数据集硬件建议

可向外扩展和向上扩展为中型数据集指定的最低要求来处理额外的负载。向上扩展和向外扩展拓扑讨论了有关如何处理增多的用户负载和增多的数据负载的注意事项。

一般建议是,您应通过让足量计算机向拓扑中添加 Web 前端服务器和应用程序服务器,来准备处理额外的用户负载和数据负载。Web 前端服务器和应用程序服务器的硬件规格可保持一致。4 × 2 × 1 拓扑应足以满足大多数中型数据集和使用模式的需求。扩展应用程序服务器和 Web 前端服务器将为 SQL Server 的部署增加额外负载,您应通过添加更多内存和 CPU 资源来对此进行补偿。以下 SQL Server 规格应能满足大多数中型数据集的性能需求。确定您设计的拓扑是否满足性能需求的最佳方式是,设置一个暂存环境来测试您的拓扑并监视性能特征。

前端 Web 服务器

组件 建议的配置

处理器

64 位,四核,每核至少 2.5 GHz

RAM

4 GB 供开发人员或评估使用,8 GB 供单服务器和多服务器的服务器场安装的生产使用

硬盘

80 GB

应用程序服务器

组件 建议的配置

处理器

64 位,四核,每核至少 2.5 GHz

RAM

4 GB 供开发人员或评估使用,8 GB 供单服务器和多服务器的服务器场安装的生产使用

硬盘

80 GB

SQL Server

组件 建议的配置

处理器

64 位,八核,每核至少 2.5 GHz(如果您的数据集比中型数据集大得多,建议使用八核。)

RAM

32 GB

硬盘

160 GB

大型数据集硬件建议

对于大型数据集,数据负载是最大的性能瓶颈。

通常,对于大型数据集,至少需要 4 × 2 × 1 拓扑。Web 前端服务器和应用程序服务器的硬件特征通常会与为小型数据集和中型数据集建议的硬件特征保持一致。但是,假定 SQL Server 安装将是一个瓶颈,您可能会发现,这将限制您扩展到其他 Web 前端服务器和应用程序服务器的能力。如果您发现数据负载是您的瓶颈,则您可能会发现其他 Web 前端服务器和应用程序服务器不会增加吞吐量。

对于大型数据集,如果与 Project Server 2010 共存的 SharePoint Server 2010 实例的使用率很高(即,您未将该 SharePoint Server 2010 部署专门用于 Project Server 2010 功能),则建议您将四个 Project Server 2010 数据库与 SharePoint Server 2010 内容数据库分隔开,并将它们置于其专用的 SQL Server 实例上。

假定数据吞吐量将是一个瓶颈,您应在拓扑的 SQL Server 层上投入其他资源。可以通过添加 RAM、CPU 和硬盘资源来“向上扩展”SQL Server 安装。以下各节列出了针对大型数据集拓扑的 SQL Server 层的最低规格和建议规格。

最低 SQL Server 要求

组件 建议的配置

处理器

64 位,八核,每核至少 2.5 GHz。(如果数据集大小明显超过中等数据集的大小,则推荐使用八核。)

RAM

32 GB

硬盘

250 GB

建议的 SQL Server 要求

组件 建议的配置

处理器

64 位,八核,每核至少 2.5 GHz。(如果数据集大小明显超过中等数据集的大小,则推荐使用八核。)

RAM

64 GB

硬盘

300 GB 或更多。将报表数据库置于单独的数据库服务器上。理想情况下,您应分隔开磁盘间的数据并设置这些数据的优先级。将数据文件和 SQL Server 2008 事务日志置于单独的物理硬盘上。RAID 5 应提供可靠性和吞吐量之间的折衷方案。

虚拟化建议

Project Server 2010 可以在虚拟机上运行。为 SharePoint Server 2010 的虚拟化提供的大多数建议也适用于 Project Server 2010。有关 SharePoint Server 2010 的虚拟化的文档,请参阅虚拟化规划 (SharePoint Server 2010)。您也可以参阅 Project Server 2007 虚拟化指南,来了解有关虚拟化和 Project Server 2010 的其他信息,这是因为该指南的大部分内容仍适用。但是,在使用虚拟化的任何情况下,都必须考虑在同一物理实例上运行的各个虚拟机对物理计算机的资源的争用情况。

备注

建议您不要在虚拟机上运行 SQL Server。虚拟机上资源的争用会大大降低服务器的性能。如果您必须在虚拟化环境中运行 SQL Server,建议您使用以下设置:

  1. 网络适配器:

    • 如果您使用的是 Hyper-V 虚拟化,则应使用虚拟网络适配器而非旧的网络适配器。

  2. 虚拟磁盘:

    • 对于运行 SQL Server 的虚拟机,建议您为磁盘类型选择“通过”选项(而非动态或固定)。如果此选项不存在,则应使用具有固定磁盘大小而非动态大小的虚拟磁盘。

    • 建议您为启动驱动器选择“IDE over SCSI”

    • 分配足量的硬盘空间以满足数据集的预期最大大小和 ULS 日志记录要求。

  3. 内存:

    • 应为运行 SQL Server 的虚拟机分配尽可能多的内存。此内存量应与提供相同功能的物理服务器的必需/建议的内存量不相上下。

    • 至少应为主机操作系统预留 2 GB 内存。

在虚拟化环境中运行 Web 前端服务器或应用程序服务器旨在不会对正在虚拟化环境中运行的 SQL Server 的性能造成损害。

网络要求

对于大多数 Project Server 部署,网络带宽不应成为性能瓶颈。下表列出了建议的网络组件规格。总体目标应为,在应用程序层和 SQL Server 层之间保持低延迟。

组件 小型和中型数据集 大型数据集

NIC 数量

1

2

#NIC 速度(网络)

任何快于 100mbps 的速度均可接受

1 GB/s

负载平衡器类型

NLB 或硬件;二者均可接受

NLB 或硬件;二者均可接受