规划内存配置

 

适用于: Exchange Server 2007 SP3, Exchange Server 2007 SP2, Exchange Server 2007 SP1, Exchange Server 2007

上一次修改主题: 2009-02-03

在选择 Microsoft Exchange Server 2007 使用的硬件时,需要考虑许多因素。要考虑的三个最关键的因素是处理器的选择、内存量以及存储的选择。本主题就内存配置问题提供了一些指导,有助于您选择内存配置来为 Exchange Server 提供优异性能和强大平台。有关处理器的具体准则及建议配置,请参阅规划处理器配置。有关存储的详细指导和建议配置,请参阅规划磁盘存储

由于转移到 64 位体系结构,与以前版本的 Exchange Server 相比,Exchange 2007 的内存利用率要高得多。例如,由于 32 位平台的虚拟地址空间限制,Exchange Server 2003 仅限于使用 4 GB 或更少的物理内存,而 Exchange 2007 可以使用 32 GB 或更多的内存。

note注意:
32 GB 不是物理限制,而是当前成本效率最高的最大内存配置。成本效率最高的最大内存配置可能小于 32 GB(例如,16 GB),具体取决于服务器的内存插槽数。在选择服务器硬件时,需要考虑到这一点。

选择 Exchange 2007 的硬件时,建议您考虑服务器的最大内存配置。不同服务器体系结构的内存限制也各不相同。建议您检查服务器的下列技术规范,以确定适合于您的服务器的成本效率最高的最大内存配置:

  • 内存速度   某些服务器体系结构需要速度较慢的内存,以便在特定服务器中将内存扩展到数十 GB。例如,使用 PC3200 时服务器最大内存限制为 16 GB,使用 PC2700 时最大内存限制为 32 GB。应咨询制造商,以确保 Exchange 2007 的内存配置目标在速度方面是兼容的。

  • 内存模块大小   应考虑服务器将支持的最大内存模块大小。通常,内存模块越大,价格越高。例如,两个 1 GB 的 DDR SDRAM 内存模块通常比一个 2 GB 的 DDR SDRAM 内存模块费用低很多。确保最大内存模块大小能够满足 Exchange 2007 的目标内存要求。可能有必要投入更多的资金购买更紧凑的内存模块,以确保能够满足 Exchange 2007 的内存要求。

  • 内存插槽总数   应考虑特定服务器支持的内存模块数量。插槽总数乘以最大内存模块大小将得出服务器的最大内存配置。记住,有时内存模块必须成对安装。

对于此规划方法的一个告诫消息是在增加所安装的内存插槽时,有些服务器性能会提高,而有些服务器性能会降低。请咨询硬件供应商,了解对您的服务器体系结构的上述影响。

建议的内存配置

了解每个服务器角色估计需要的处理器核心数之后,可以应用基准内存建议。下表列出了不同 Exchange 2007 服务器角色的最低内存配置、建议内存配置和最大内存配置。

基于已安装的服务器角色的 Exchange 2007 服务器的内存配置

Exchange 2007 服务器角色 每个服务器的最低内存配置 建议 每个服务器的最大内存配置

边缘传输

2 GB

每个核心 1 GB(最小 2 GB)

16 GB

集线器传输

2 GB

每个核心 1 GB(最小 2 GB)

16 GB

客户端访问

2 GB

每个核心 2 GB(最小 2 GB)

16 GB

统一消息

2 GB

每个核心 1 GB

(最小 2 GB)

4 GB

邮箱

2 GB;还取决于存储组的数目(有关信息,请参阅本主题后面的介绍。)

2 GB 外加每个邮箱 2 MB 到 5 MB。该值随用户配置文件而变化。有关详细信息,请参阅本主题后面的“邮箱服务器角色”。

32 GB

多角色(集线器传输、客户端访问、统一消息和邮箱服务器角色的组合)

4 GB;还取决于存储组的数目(有关信息,请参阅本主题后面的介绍。)

8 GB 外加每个邮箱 2 MB 到 5 MB。该值随用户配置文件而变化。有关详细信息,请参阅本主题后面的“邮箱服务器角色”。

32 GB

边缘传输服务器角色和集线器传输服务器角色

边缘传输服务器角色和集线器传输服务器角色不需要大量内存即可在最佳状况下良好工作。通常,每个处理器核心对应 1 GB 内存(总内存量最小为 2 GB)就足以处理所有负载(最苛刻的负载除外)。建议的最大内存配置 16 GB 基于边缘传输服务器和集线器传输服务器处理一百万封邮件且每个服务器具有平均收件人数量的情况。大多数部署使用建议的每个处理器核心 1 GB(总内存量最小为 2 GB)内存配置即可获得最佳配置。

对于大型部署,应当考虑到的两个重要的内存因素是大型队列方案和 Edgesync 内存要求。

大型队列方案

Exchange 2007 边缘传输服务器和集线器传输服务器的设计就是用于处理可产生极大型队列(例如,在单个服务器队列中出现 1 百万封邮件)的方案。这些服务器将排队的邮件收件人信息存放在内存中,以优化发送和重试操作。确定大型队列方案的边缘传输服务器或集线器传输服务器的内存大小时,可使用下表。

大型队列方案的内存开销

每个排队邮件的内存因素 内存消耗量

每个邮件的开销

3 千字节 (KB)

每个收件人的开销

1 KB

EdgeSync 内存要求

EdgeSync 是对位于同一个 Active Directory 目录服务站点中的边缘传输服务器和集线器传输服务器之间的目录信息进行同步的过程。所有集线器传输服务器都将 EdgeSync 目录信息存放在内存中,以加快将该信息推送到边缘传输服务器。使用的内存量取决于目录中已启用邮件的对象(例如,收件人和通讯组列表)的数量。每个已启用邮件的对象将导致 EdgeSync 进程消耗大约 4 KB 内存。

建议的集线器传输服务器内存配置是针对非企业部署来说的。拥有数万个已启用邮件的对象的组织应当了解 EdgeSync 内存开销,并适当地确定其集线器传输服务器的大小。

客户端访问服务器角色

一般情况下,客户端访问服务器的内存使用与客户端连接数目和事务率间存在线性关系。根据当前的处理器和内存配置建议,客户端访问服务器将在内存和处理器使用方面加以平衡,如果该服务器是受内存限制的,那么它几乎同时也是受处理器限制的。

邮箱服务器角色

与其他角色相比,邮箱服务器角色的内存配置过程更加复杂,因为最佳内存配置取决于邮箱数和客户端配置文件(类似于估计处理器核心要求)。确定邮箱服务器角色的内存大小是减少服务器上磁盘输入/输出 (I/O) 的关键。添加到邮箱服务器的内存越多,Exchange 生成的磁盘 I/O 越少。但是,综合考虑价格和性能,这里存在一个收益递减点,超过这一点需要向服务器添加内存可能是不划算的。这一节中概括的内存建议考虑到了该收益递减点,并且基于当前的内存价格和性能指标。

在定义邮箱服务器的存储要求和配置之前,必须先定义该服务器的内存配置。可以使用下表来估计具有特定驻留邮箱数和特定配置文件类型的特定邮箱服务器的内存要求。

邮箱服务器内存建议

用户类型 邮箱服务器内存建议

轻负载

2 GB 外加每个邮箱 2 MB

平均负载

2 GB 外加每个邮箱 3.5 MB

重负载

2 GB 外加每个邮箱 5 MB

极重负载

2 GB 外加每个邮箱 5 MB

额外负载

2 GB 外加每个邮箱 5 MB

邮箱服务器的建议最大内存配置

最新的基于 x64 的服务器能够将其内存配置扩展到 64 GB 甚至更高。我们不建议邮箱服务器的最大内存配置在 32 GB 以上有多个原因,包括成本、对非事务磁盘 I/O 的影响以及冷状态操作:

  • 成本   基于当前内存价格,特别是 4-GB 双内联内存模块 (DIMM) 的当前平均价格,在单个邮箱服务器上安装超过 32 GB 内存的成本过于高昂。通常,32 GB 以内物理内存的成本呈线性增长。超过 32 GB,成本将呈指数增长;对于很多配置来说,添加磁盘驱动器比添加内存的成本要低。

  • 非事务磁盘 I/O   邮箱服务器通过缓存更多数据来利用增加的物理内存,这样可以减少事务磁盘 I/O(客户端活动生成的 I/O)的数据库磁盘 I/O 占用量。邮箱服务器上的非事务磁盘 I/O 有几种来源,其中包括联机维护(例如,联机数据库碎片整理)、脱机维护(例如,脱机数据库碎片整理或数据库修复操作)、备份操作、还原或恢复操作,以及邮箱管理操作。所有这些操作都需要磁盘 I/O 才能正确维护服务器。尽管 Exchange 2007 已大幅减少了事务 I/O,但仍然需要足够的存储性能才能正确维护邮箱服务器。因此,向服务器添加内存时,存在一个收益递减点。通常,向邮箱服务器添加内存是为了减少磁盘 I/O 要求,从而减少存储解决方案的总成本。由于存在非事务 I/O 要求,添加超过 32 GB 的内存并不能显著降低服务器的存储要求。

  • 冷状态操作   冷状态的定义是在服务器刚刚重新启动或 Microsoft Exchange 信息存储服务刚刚重新启动后邮箱服务器所处的状态。在此期间,数据库缓存(用于缓存读取/写入操作)很小(冷),所以其减少读取 I/O 操作的能力显著削弱。当邮箱服务器处理邮件时,数据库缓存大小将会增长,从而提高了缓存效率,并随后减少了服务器的磁盘 I/O。服务器中的物理内存越多,数据库缓存达到其最佳大小所需的时间就越长。如果存储解决方案的设计和大小适用于拥有大量物理内存(超过 32 GB)的服务器,并且用户的磁盘 I/O 配置文件假设处于最佳数据库缓存状态(例如,大型、暖缓存),则在冷状态期间,客户端体验可能会由于磁盘性能不足而有所降低。与非事务 I/O 的问题类似,配备 32 GB 内存的服务器的存储要求可能与配备 32 GB 以上内存的服务器相同。在正确配置的邮箱服务器上,在冷操作出现后达到最佳缓存状态会花费大约 15 分钟的时间。

尽管邮箱服务器角色可以利用 32 GB 以上的内存,但由于前面概括的原因,32 GB 是建议的最大内存配置,并且是同时考虑到开销和性能时的收益递减点。

基于存储组数目的邮箱服务器的最低内存要求

在 Exchange 2007 中,每个服务器的最大存储组数已增加到 50 个(在 Exchange Server 2003 中是 4 个)。这一增加为服务器和存储体系结构提供了更大的灵活性,但也对邮箱服务器的内存利用率产生了巨大影响。增加存储组数主要会影响到数据库缓存的利用率。读取和写入活动都会用到数据库缓存。根据检查点的工作方式,添加存储组就会增加用于写入活动的数据库缓存量。这对减少数据库写入 I/O 有正面影响,但如果在物理内存不足的服务器上配置了太多存储组,则数据库读取缓存的效率可能降低。这会对服务器的总体性能产生负面影响。因此,在服务器的存储组数与物理内存量之间维持一定的比率很重要。

在 Exchange 2007 Service Pack 1 (SP1) 中,对可扩展存储引擎 (ESE) 进行了多项性能增强,降低了邮箱服务器角色的内存要求。下表基于 Exchange 2007 和 Exchange 2007 SP1 的服务器上存储组的数目列出了每个服务器的特定最低内存要求。

基于存储组数目的最低内存要求

存储组计数 Exchange 2007 的最低物理内存要求 Exchange 2007 Service Pack 1 的最低物理内存要求

1-4

2GB

2GB

5-8

4GB

4GB

9-12

6GB

5GB

13-16

8GB

6GB

17-20

10GB

7GB

21-24

12GB

8GB

25-28

14GB

9GB

29-32

16GB

10GB

33-36

18GB

11GB

37-40

20GB

12GB

41-44

22GB

13GB

45-48

24GB

14GB

49-50

26GB

15GB

上表补充说明了 Exchange 2007 的基本 2-GB 最低内存要求。邮箱和多角色服务器配置必须满足上表中列出的要求,以从 Microsoft 获得支持。

上表中列出的基于存储组的最低物理内存要求与基于邮箱数和配置文件的内存大小的建议十分匹配。若要了解如何使用这些内存建议,请参考下列示例:

  • 示例 1   使用重负载用户配置文件并拥有 4,000 个用户的邮箱服务器需要 22 GB RAM (2,048 MB + (4,000 × 5 MB))。根据上述支持要求,该服务器最多可支持 44 个存储组。若要支持多于 44 个的存储组,将需要额外的 RAM。

  • 示例 2   使用轻负载用户配置文件且拥有 1,000 个用户的邮箱服务器需要 4 GB RAM (2,048 MB + (1000 × 2 MB))。根据上述支持要求,该服务器最多可支持 8 个存储组。若要支持多于 8 个的存储组,将需要额外的 RAM。

关于本地连续复制的内存建议

在本地连续复制 (LCR) 环境中,启用了 LCR 的存储组的主动副本和被动副本位于同一服务器上。根据提供的内存指导,Microsoft Exchange 复制服务可以在已为一个或多个存储组启用了 LCR 的服务器上正常运行。但是,为确保 ESE 数据库缓存在 LCR 环境中保持最佳有效性,建议为邮箱和多角色服务器额外安装 1 GB RAM(超出了前面列出的内存指导要求)。

多个服务器角色

对多个服务器角色配置的指导和限制与邮箱服务器角色类似。为了满足与邮箱服务器角色位于同一服务器上的客户端访问服务器角色和集线器传输服务器角色,建议的基本内存配置为 8 GB。基于邮箱数和配置文件的内存指导与邮箱服务器角色相同。建议的最大内存量为 32 GB。

群集连续复制 (CCR) 和单一副本群集 (SCC) 都不支持在故障转移群集中驻留集线器传输或客户端访问服务器角色。根据定义,多角色服务器是非群集的。最好为驻留成千上万个邮箱的邮箱服务器建立群集,以确保服务器维护或故障不会对正常工作时间或可用性产生重大影响。

上表中列出的基于存储组数目的最低内存要求适用于多角色服务器配置,其中包括含有邮箱服务器角色的配置。