Outlook Web Access 的基准性能

 

上一次修改主题: 2005-05-10

此部分提供了 Outlook Web Access 的基准性能数据。Outlook Web Access 是一个使用 HTTP 访问 Exchange 服务器的 Web 接口。您可借助任意 Web 浏览器来访问使用 Outlook 的客户端可用的大部分功能。此部分描述了下列方案:

  • 方案 1 对下面两种不同配置中,前端服务器上具有相似邮件流的 10,000 个 Outlook Web Access 用户加以比较:Exchange Server 2003 和 Windows 2000 与 Exchange Server 2003 和 Windows Server 2003。
  • 方案 2 在将邮件流保持不断时启用其他功能,此时对性能加以比较。
  • 方案 3 在不同负载下启用其他功能时,使用 LoadSim 对性能加以比较。

方案 1

此方案对下面两种不同配置中,前端服务器上具有相似邮件流的 10,000 个 Outlook Web Access 用户加以比较:Exchange Server 2003 和 Windows 2000 与 Exchange Server 2003 和 Windows Server 2003。此方案中使用的配置如下:

  • 有四个存储组,每个存储组中有三个私人邮箱存储。
  • 客户端发送平均大小为 20 KB 的邮件。
  • 每个用户的收件箱在测试开始之前都有 31 封 IMAP4 邮件。
  • 每个用户向 Internet 发送电子邮件时,传输通信就产生了。
  • 每个用户连接持续大约 10 分钟。

下表显示了每个用户执行的操作。

用户测试脚本

操作 执行次数

登录

1

检查邮件

2

发送邮件

2

已发送邮件的收件人

1

接收邮件

4

读取邮件

4

移动邮件

1

删除邮件

1

硬件

下表显示了此方案中所用的三台服务器的规格。

Outlook Web Access 方案 1 硬件

服务器类型 处理器类型 RAM 存储

前端服务器

Intel P4 Xeon 2 处理器,2.6 GHz(超线程)

1 GB

  • 不适用

后端服务器 1

Intel P4 Xeon 4 处理器,1.4 GHz

4 GB

  • 带有 20 个心轴的 RAID0+1,用于数据库卷
  • 带有 4 个心轴的 RAID0+1,用于每个存储组的事务日志

后端服务器 2

AMD Opteron 4 处理器,1.6 GHz

2 GB

  • 带有 20 个心轴的 RAID0+1,用于数据库卷
  • 带有 4 个心轴的 RAID0+1,用于每个存储组的事务日志

Outlook Web Access 前端服务器

客户端可通过 HTTP 访问 Outlook Web Access。下表概述了在 Windows 2000 和 Windows Server 2003 这两种不同配置下,前端服务器上的处理器使用、每秒上下文切换、网络流量和内存使用。

Outlook Web Access 前端服务器比较

前端服务器 Exchange Server 2003、Windows 2000 Exchange Server 2003、Windows Server 2003

Network Usage(Kbps)

4,679

6,313

Inetinfo Private Bytes

518 MB

38 MB

W3WP Private Bytes

不适用

79 MB

Available Mbytes

276 MB

484 MB

% Processor Time

52%

21%

Context Switches/sec

11,795

13,791

Web Bytes Total/sec

2,720 KB

3,706 KB

Web ISAPI Extension Requests/sec

98

135

有关此方案中使用的性能计数器的详细信息,请参阅性能计数器定义

处理器

在此方案中,Outlook Web Access 在运行 Windows Server 2003 的前端服务器上使用的 CPU 明显较少。对于 10,000 个用户而言,上下文切换很少且很稳定。

内存

在为 Outlook Web Access 请求提供服务时,就内存而言,Windows Server 2003 中的 IIS 工作进程 (W3WP) 要比 Windows 2000 中的 Internet 信息服务 (IIS) 更为有效。在此方案中,运行在 Windows 2000 Server 上的 Exchange Server 2003 消耗 756 MB RAM,而运行 Windows Server 2003 的服务器仅消耗 540 MB。Windows Server 2003 中的 Inetinfo 核心进程将大部分工作发送到 W3WP 进程中。两种前端服务器的存储进程消耗掉的 RAM 数量可以忽略不计。

磁盘使用

有关专用的 Outlook Web Access 前端服务器的磁盘使用的信息,请参阅本主题后面“POP3 前端服务器”中的“磁盘使用”。

网络使用

有关专用的 Outlook Web Access 前端服务器的网络使用的详细信息,请参阅 POP3 的基准性能的“POP3 前端服务器”中的“网络使用”。

Outlook Web Access 后端服务器

下表显示了 Outlook Web Access 后端服务器所产生的结果。

Outlook Web Access 后端服务器比较

后端服务器 Exchange 2003、Windows 2000 Exchange 2003、Windows Server 2003

Database Cache Size

896 MB

896 MB

Available Mbytes

409 MB

93 MB

Local Delivery Rate

7

6

Network Usage(Kbps)

4,705

6,313

Disk Bytes/Sec

14,739 KB

15,365 KB

DB Disk Transfers/sec

1,959

1,723

Inetinfo Private Bytes

83 MB

124 MB

Store Virtual Bytes

1,788 MB

1,764 MB

% Processor Time

27%

38%

Context Switches/sec

15,769

14,363

Web ISAPI Extension Requests/sec

59

81

有关此方案中使用的性能计数器的详细信息,请参阅性能计数器定义

处理器

尽管在 Windows Server 2003 中前端服务器的 CPU 使用有所降低,但后端服务器则显示为 CPU 的使用有所上升。在 Windows Server 2003 测试中较大的吞吐量会消耗更多的 CPU,但是两种测试的每一操作成本都类似。

内存

四处理器 Outlook Web Access 后端服务器需要至少 500 MB RAM。在本主题所述的大部分有四个处理器的方案中,Store.exe 进程消耗掉超过 1 GB 的 RAM。Exchange Server 2003 使用最多 3 GB 的内存。若要提高性能,请将内存增加到 3 GB 以减少磁盘的分页。

磁盘使用

在使用 Outlook Web Access 客户端专用的后端服务器时,将每个存储组的数据库文件放到专用的 RAID0+1 阵列,并使用缓存备份控制器。

网络使用

对所有的 Outlook Web Access 邮箱服务器应用程序而言,每秒 100 兆比特 (Mbps) 的全双工网络连接已足够。即使是在最苛刻的测试条件下,用于和本指南配套的 Outlook Web Access 的测试也不会超过 7 Mbps 的网络使用。这个级别远远低于 100 Mbps 全双工网络连接的网络饱和点。

方案 2

此方案将 Outlook Web Access 其他功能的性能与 Outlook Web Access 的测试基准(方案 1)加以比较。在此方案中,将启用下列功能:

  • 拼写检查 将 Outlook Web Access 基准测试修改为检查所有发送、答复和转发操作的拼写,来模拟用户对发送的邮件使用拼写检查器的功能。
  • SSL 将 Outlook Web Access 基准测试修改为使用 SSL 加密,从而提供安全性以及一个 Outlook Web Access SSL 基准测试示例。
  • Gzip 压缩 将 Outlook Web Access SSL 基准测试修改为使用 gzip 压缩,从而减少线路上所发送文件的大小。
  • S/MIME 将 Outlook Web Access SSL 基准测试修改为使用安全/多用途 Internet 邮件扩展 (S/MIME),以便对所有发送、答复或转发的邮件进行编码。

此外,此方案还使用了以下配置:

  • 有四个存储组,每个存储组中有三个私人邮箱存储。
  • 使用 2,000 个 Outlook Web Access 用户,每秒钟在 Internet 上通过 SMTP 入站发送 3.5 封邮件。
  • 客户端发送平均大小为 20 KB 的邮件。
  • 每个用户的收件箱在测试开始之前都有 31 封 IMAP4 邮件。
  • 每个用户向 Internet 发送电子邮件时,传输通信就产生了。
  • 每个用户连接持续大约 10 分钟。

方案 1 的表中显示了由方案 2 中的每个用户执行的操作。

硬件

此方案使用的硬件配置与 Outlook Web Access 方案 1 中使用的硬件配置相同。

Outlook Web Access 功能 - 前端服务器

根据方案 1 中列出的用户操作,可以观察到以下数据。

Outlook Web Access 前端功能比较

前端服务器 Outlook Web Access 基准 拼写检查器 SSL SSL gzip SSL S/MIME

Inetinfo Private Bytes

36 MB

36 MB

29 MB

29 MB

29 MB

Lsass Private Bytes

50 MB

58 MB

211 MB

212 MB

222 MB

Available MB

517

484

335

338

289

% Processor Time

12%

23%

27%

29%

33%

Context Switches/sec

3,303

3,685

3,462

3,461

3,794

Web Bytes Total/sec

332 KB

494 KB

377 KB

384 KB

508 KB

Web ISAPI Extension Requests/sec

34

46

34

35

45

有关此方案中使用的性能计数器的详细信息,请参阅性能计数器定义

处理器

启用拼写检查器时,Outlook Web Access 基准的处理器使用几乎翻了一番。前端服务器上的拼写检查器很耗费 CPU,可在每次发送邮件时手动或自动启用。SSL 消耗的 CPU 资源要比 Outlook Web Access 基准所耗费的多 125%。启用 gzip 压缩会消耗超过 SSL 基准 7% 的 CPU 使用。启用 S/MIME 最耗费 CPU,会消耗超过 SSL 基准 22% 的 CPU 使用。上下文切换则耗费较低,在所有测试中情况都类似。

内存

所有测试的内存消耗看起来都类似。启用 SSL 的测试显示可用兆字节有所下降,这是因为 Lsass 进程会消耗的内存较多。Lsass 进程处理 SSL 连接的凭据和加密。

磁盘使用

Outlook Web Access 前端服务器很少使用其硬盘。有关专用的 Outlook Web Access 前端服务器的磁盘使用的信息,请参阅 POP3 的基准性能的“POP3 前端服务器”中的“磁盘使用”。

网络使用

所有测试的网络消耗看起来都类似。拼写检查器会额外消耗前端服务器的 5% 的网络资源,这是因为在最终发送邮件之前,必须向前端服务器发送该邮件进行拼写检查,这是一个额外的操作。S/MIME 是一个明显的例外。它会额外消耗前端服务器的 27% 的网络资源。

Outlook Web Access 功能 - 后端服务器

大多数所测试的功能影响的是前端服务器而不是后端服务器。

Outlook Web Access 后端功能比较

后端邮箱服务器 Outlook Web Access 拼写检查器 SSL SSL GZIP SSL S/MIME

Local Delivery Rate

24

22

23

23

8

DB Disk Transfers/sec

935

745

1,021

1,031

711

Network Usage(Kbps)

687

723

675

695

876

Inetinfo Private Bytes

120 MB

107 MB

72 MB

75 MB

112 MB

% Processor Time

40%

41%

42%

40%

37%

Context Switches/sec

11,842

12,486

11,878

11,997

10,931

Web Bytes Total/sec

271 KB

312 KB

275 KB

291 KB

400 KB

Web ISAPI Extension Requests/sec

34

41

34

35

45

有关此方案中使用的性能计数器的详细信息,请参阅性能计数器定义

处理器

测试中的处理器使用和上下文切换都类似,大约消耗 40% 的 CPU 使用和 12,000 个上下文切换。

内存

所有测试中的内存消耗都类似。启用了 SSL 的测试的 Inetinfo 进程消耗的内存较少。

磁盘使用

Outlook Web Access 后端服务器非常耗费磁盘资源。为数据库卷使用 RAID0+1,为某个存储组中的每个事务日志至少使用 RAID1。

网络使用

所有测试中的网络消耗都很类似,都远在要求的 100 Mbps 网络适配器之内。

方案 3

此方案比较不同 MAPI 用户负载下启用其他功能时的性能。在此方案中,使用 8,000 个 MAPI 用户,每秒钟在 Internet 上通过 SMTP 入站发送 3.5 封邮件。将对以下配置进行测试:

  • MAPI 基准 在此基准测试中,8,000 个 MAPI 用户直接访问后端服务器,每秒钟在 Internet 上通过 SMTP 入站向后端服务器发送 3.5 封邮件。
  • MAPI、Exchange ActiveSync 和 AUTD 在此基准测试中,8,000 个 MAPI 用户直接访问后端服务器,每秒钟在 Internet 上通过 SMTP 入站向后端服务器发送 3.5 封邮件。此 8,000 个用户中的两千四百个用户使用 Exchange ActiveSync,通过前端服务器用邮箱同步他们的移动设备。Exchange ActiveSync 的一半用户 (1,200) 的通知设置为“总是最新 (AUTD)”。每个 Exchange ActiveSync 连接持续大约 3 分钟。表 2.16 显示了每个用户执行的操作。
  • RPC over HTTP 此基准测试通过前端 RPC 代理服务器进行路由。
  • MAPI 和 Outlook Web Access 在此基准测试中,8,000 个 MAPI 用户直接访问后端服务器,每秒钟在 Internet 上通过 SMTP 入站向后端服务器发送 3.5 封邮件。有五百个 Outlook Web Access 用户通过前端服务器访问其邮箱。每个用户连接都持续大约 10 分钟,每个用户都执行方案 1 所述的同样的操作。

客户端邮件平均大小为 20 KB。每个用户的收件箱在测试开始之前大约都有 31 封 IMAP4 邮件。每个用户向 Internet 发送电子邮件时,传输通信就产生了。

Exchange ActiveSync 用户测试脚本

操作 执行次数

GETHIERARCHY

2

syn calendar

5

sync contacts

5

sync inbox

2

getestimate calendar

1

getestimate contacts

1

getestimate inbox

1

addmailrecipient

0.6

sendmail

1

syncadd contacts

1

syncchange FOLDER("contacts").rnd

2

syncdel FOLDER("contacts").rnd

2

syncadd calendar

1

硬件

下表显示了此方案中所用的四台服务器的规格。

Outlook Web Access 方案 3 硬件配置

服务器类型 处理器类型 RAM 存储

前端服务器 1(MAPI、AUTD、Exchange ActiveSync)

Intel P4 Xeon 2 处理器,2.6 GHz

1 GB

  • 不适用

前端服务器 2(MAPI、RPC over HTTP)

AMD Athlon 2 处理器,1.2 GHz

2 GB

  • 不适用

前端服务器 3(MAPI、Outlook Web Access)

Intel P2 Xeon 2 处理器,450 MHz

1 GB

  • 不适用

后端服务器

Intel P4 Xeon MP 4 处理器,1.4 GHz(超线程)

4 GB

  • 带有 40 个心轴的 RAID0+1,用于数据库卷
  • 带有 2 个心轴的 RAID0+1,用于每个存储组的事务日志

Outlook Web Access 使用 MAPI 的功能 - 前端服务器

下表显示了在类似的 MAPI 负载下三台前端服务器的性能。

Outlook Web Access 使用 MAPI 的功能 - 前端

  前端服务器 1(MAPI、Exchange ActiveSync、AUTD) 前端服务器 2 (RPC over HTTP) 前端服务器 3(MAPI、Outlook Web Access)

% Processor Time

3%

23%

2%

Context Switches/sec

610

10,447

776

Web Bytes Total/sec

6 KB

253 KB

123 KB

Web ISAPI Extension Requests/sec

4

61

3

有关此方案中使用的性能计数器的详细信息,请参阅性能计数器定义

将前端服务器用作 RPC over HTTP 代理服务器时,8,000 个用户的 10,000 个上下文切换会消耗此 1.2 GHz 双处理器服务器的 23% 的资源。前端服务器的 Outlook Web Access 和 ActiveSync 的压力最小。内存和磁盘消耗最小,而网络使用为 2 MB,远在推荐的 100 Mbps 网络适配器之内。

Outlook Web Access 使用 MAPI 的功能 - 后端服务器

下表显示了在启用 Outlook Web Access 的特定功能之后的后端服务器的性能。

Outlook Web Access 使用 MAPI 的功能 - 后端

  MAPI 基准 RPC over HTTP MAPI 和 Outlook Web Access MAPI、ActiveSync 和 AUTD

Database Cache Size

896

896

896

896

Log Writes/sec

265

270

229

220

DB Disk Transfers/sec

1,609

1,494

1,767

1,530

Disk Bytes/sec

18.7 MB

16.9 MB

20.5 MB

18.6 MB

Local Delivery Rate

26

25

26

22

RPC Operations/sec

1,208

1,136

1,226

1,188

RPC Requests

9

6

22

7

Network Usage(Kbps)

2,452

2,031

2,237

2,008

Inetinfo Private Bytes

190

51

187

45

Store Virtual Bytes

2,127

2,063

2,104

2,124

% Processor Time

50

44

73

91

Context Switches/sec

13,875

13,292

18,824

12,365

Web Bytes Total/sec

不适用

不适用

109 KB

108 KB

SMTP Messages Del/sec

7.6

7.6

8

7

Web ISAPI Extension Requests/sec

不适用

不适用

3

17

有关此方案中使用的性能计数器的详细信息,请参阅性能计数器定义

根据此测试,得到以下结论:

  • MAPI、Exchange ActiveSync 和 AUTD 与 MAPI
    • 每秒钟发送四个 AUTD 和 Exchange ActiveSync 通知。
    • 在后端服务器上,Exchange ActiveSync 和 AUTD 通知将 90% 以上的 CPU 使用率用于为 Exchange ActiveSync 功能提供服务。前端服务器的负载可忽略不计。
  • RPC over HTTP 与 MAPI
    • 在 MAPI 通信通过前端代理服务器进行路由时,8,000 个 MAPI 用户消耗掉前端处理器的 23% 的资源。后端服务器负载与 MAPI 基准测试类似。
  • MAPI 和 Outlook Web Access 与 MAPI
    • 在 Outlook Web Access 和 MAPI 同时运行的情况下,后端服务器的 CPU 使用会增加 23%。上下文切换以类似的速率增加。

Outlook Web Access 可伸缩性标准

在设计 Outlook Web Access 服务器时,请考虑下列标准:

  • Outlook Web Access 在四处理器服务器上可很好地进行扩展。
  • 采用一台前端服务器与四台后端服务器的比率。
  • Outlook Web Access 的每个活动连接要求 30 KB RAM。
  • Outlook Web Access 实际上不占用磁盘资源,除非前端服务器进行分页或者开启了 HTTP-DAV 协议日志记录。
  • 如果 Outlook Web Access 提供服务的连接超过了 5,000 个,则会要求另加一个 100 Mbps 的网络适配器。
  • 使用网络负载平衡来对 Outlook Web Access 前端服务器的负载进行平衡。
  • Outlook Web Access SSL 连接会对前端服务器额外要求三倍的处理能力,以及 60% 的内存。