IBM Lotus Notes V8 工作负载:将性能提升到新的水平

了解 IBM Lotus Notes/Domino V8 对 NotesBench 和 Server.Load 工作负载所做的改进。三个新的工作负载(N8Mail、N7Mail 和 N8MailInit)反映了 Lotus Notes 用户与 Lotus Domino 服务器进行交互时的典型任务。

Razeyah Stephen, 经理, IBM

Razeyah Stephen 是 IBM Lotus Domino 和 IBM Lotus Sametime Performance 小组的经理。她于 1998 年 10 月加入 Iris Associates。



Joe Malek (jmalek@us.ibm.com), 软件工程师, IBM

Joe Malek 是 IBM Lotus Domino Performance 小组的一名开发人员。他当前致力于为 Lotus Domino Performance 小组开发在各种平台上使用的性能工具,例如 Microsoft Windows、Linux、IBM AIX 和 Sun Solaris 。Joe 在 2000 年 10 月加入 Iris Associates。



Leon Desy (ldesy@us.ibm.com), 软件开发人员, IBM

Leon Desy 是 IBM Domino Performance 小组的一名开发人员。他当前致力于为 Lotus Domino Performance 小组开发在各种平台上使用的性能工具,例如 Microsoft Windows、Linux、IBM AIX 和 Sun Solaris 。在 2006 年 8 月加入这个小组之前,Leon 为 Lotus Notes/Domino 提供了长达 8 年的 L3 支持。他在 1998 年 8 月加入 Iris Associates。



2007 年 10 月 08 日

了解 Lotus Notes 用户获得的真实性能的方法之一是,尽可能真实地模拟 Lotus Notes V8 和 Lotus Notes V7 客户机执行的 API 调用。全新的 N8Mail 和 N7Mail 工作负载用来再现这些调用,它们产生更大的事务处理速率,这意味着它们产生的数据与以前的 R6Mail 结果不同,不能直接地相互比较这些结果。以后会提供一篇文章来详细比较 Lotus Domino V8.0 和 Lotus Domino V7.0 为 Notes 客户机提供的性能。

本文帮助系统管理员和设计人员了解在 Lotus Notes/Domino V8 环境中执行性能度量的方法。本文假设读者是有经验的 Lotus Domino 管理员。

NotesBench 和 Server.Load 工作负载

NotesBench 工作负载只供 NotesBench Consortium 的成员使用。Server.Load 是 NotesBench 工作负载的 GUI 版本,可供所有客户使用。Server.Load 是基于 Lotus Domino 特性的负载生成工具,可以使用它度量并描述各种 Lotus Domino 服务器的容量和响应标准。对于 Lotus Notes 和 Domino V8,可以使用 Server.Load 和 NotesBench 中提供的工作负载。工作负载(也称作测试或脚本)模拟从 Lotus Domino 客户机到服务器的操作行为。工作负载使我们能够用一个通用工具对 Lotus Domino 服务器施加一致的可重复的负载,这样就可以评估各种操作系统、硬件和配置修改的效果。若要了解 Server.Load 的概况,请参阅 developerWorks Lotus 文章 “Introduction to Domino performance tuning”。在安装 Lotus Domino Administrator 客户机时,可以选择安装 Server.Load。Server.Load 的文档包含在 Lotus Domino Administrator 帮助 中。

Lotus Domino Performance 小组一直为 Lotus Domino Administrator 客户机自带的 Server.Load 实用程序添加特性和增强功能。对于每个主要的 Lotus Notes 和 Lotus Domino 版本,用户都向小组指出他们使用产品的方式发生了变化,因此工作负载也应该相应地改变。除了参考用户的反馈之外,我们还特别注意了 Lotus Notes V8 客户机中的变化,从而让工作负载精确地反映用户操作。这种精确性能够使小组确保工作负载中 Lotus Domino 服务器产生的事务与 Lotus Notes V8 客户机的实际情况匹配。另外,在这个版本中,我们集成了 Lotus Domino 环境的工作负载设置组件,这是以前的工作负载版本没有涉及的。新的组件包括所有默认服务器任务、邮件日志、事务日志记录、Lotus Domino Domain Monitoring(DDM)探测、邮件规则和更大的邮件文件。这些组件使 N8Mail 工作负载能够更真实地反映典型环境中 Lotus Notes 用户与 Lotus Domino 服务器的交互情况。我们还创建了 N7Mail 工作负载,它在本质上执行与 N8Mail 相同的用户工作负载操作。但是在幕后,各个命令精确地将 Lotus Notes V7 客户机事务反映到 Lotus Domino V7 服务器。由于采用这种方式,适用于 N8Mail 的所有文档也适用于 N7Mail。最后,我们提供了 N8MailInit 工作负载。这个工作负载按照本文后面介绍的新描绘的用户模型填充 N8Mail 和 N7Mail 所用的邮件数据库。

表 1 到表 4 所示的用户数只是运行基准脚本的实例,它们不一定与服务器上部署的实际用户数相关。N8Mail 和 N7Mail 工作负载中所做改进的目标是,让用户模型更接近典型的生产用户。因为模拟每种客户使用场景很困难,所以您应该与 IBM TechLine 和自己的硬件供应商联系,了解最适合您的配置和环境的容量计划和部署建议。

不同 Lotus Domino 版本使用的工作负载

可以使用 N8Mail 工作负载对 Lotus Domino V8.0 进行基准测试。

可以使用 N7Mail 工作负载对 Lotus Domino V6.0.x、Lotus Domino V6.5.x、Lotus Domino V7.0.x 和 Lotus Domino V8.0 进行基准测试。

可以使用 R6Mail 工作负载对 Lotus Domino V5.0.x、Lotus Domino V6.0.x、Lotus Domino V6.5.x、Lotus Domino V7.0.x 和 Lotus Domino V8.0 进行基准测试。

定义工作负载使用模式

当我们开始开发新的 Lotus Domino 主要版本时,会审查工作负载的当前版本。通过与 Lotus Notes 和 Domino 开发人员和客户进行讨论,审查生产数据,评估行业的趋势,从 NotesBench Consortium 的成员和各个 Lotus Domino 性能小组收集反馈,我们定义了新的工作负载,它们模拟我们对未来 24 个月内用户使用模式的预测。

新的工作负载提供了什么?

在完成所有调查研究(并充分理解了用户的意见和反馈)之后,我们为 Lotus Notes 和 Domino V8 开发了新的工作负载。这些工作负载可以提供以下功能:

  • 确保精确地模拟 Lotus Notes V8 和 Lotus Notes V7 客户机向 Lotus Domino 服务器发出的事务。
  • 考虑了比以前更真实的 Lotus Domino 服务器测试环境。
  • 通过增加特性和使用模式的多样性,让描绘的用户模型更接近企业用户。因此,与以前的工作负载相比,这些工作负载能够为部署计划提供更真实的信息(CPU、磁盘、内存和网络)。

工作负载定义

N8Mail 模拟完整的 Lotus Notes V8 客户机用户。Lotus Notes 和 Domino V8 工作负载的新特性见表 1。

表 1. 更真实的 N8Mail 和 N7Mail 邮件数据库配置
N8Mail/N7MailR6Mail
邮件数据库大小大约 250 MB20 MB
平均文档大小100 KB 10 KB
初始文档数3,000100

生成的消息

新的工作负载增加了创建/发送演示文档的频率。在一个平均 6 小时的运行周期中生成 50 个文档,每次迭代生成一个文档,而且以后每次迭代增加一个文档。一次迭代大约 15 分钟。收件人数量现在在一个到三个之间变化。目前的邀请和约会比较少,每 6 小时一个。总的来说,在 6 小时的运行周期中,为每个用户生成 50 个演示文档、邀请和 RSVP,涉及大约 78 个收件人。一个新特性是为接收到的邮件生成回复,每次迭代一个。关于演示配置的更多细节见表 2。

表 2. R6Mail、N8Mail 和 N7Mail 的演示配置
消息体大小(KB) 附件大小(KB)(如果有附件的话)百分比
500N/A10
10,000N/A30
50,000N/A40
50,00050,00010
150,000N/A9.5
1,00010,000,0000.5

R6Mail、N8Mail 和 N7Mail 所用的配置是相同的,所以可以假设这种分布是有效的。表 3 进一步描述了新工作负载中发生的变化,其中给出从邮件收件人角度看到的消息分布情况。

表 3. N8Mail 和 N7Mail 的消息分布
消息大小分布 (使用配置选项)占收件人接收的消息总数的百分比附件大小(如果有附件的话)
0 < 大小 <= 1K 32.0% N/A
1K < 大小 <= 10K3.6%N/A
10K < 大小 <= 100K 57% 50 KB
100K < 大小 <1M 6.8%N/A
1M < 大小 <= 10M0.4% 10 MB

注意:这些百分比并不与前面描述的消息配置中定义的百分比匹配,因为配置只用于演示文档。它不用于回复、邀请或 RSVP,而这个表考虑了这些内容。

新的 N8Mail 和 N7Mail 用户操作包括:

  • 将任意文档从收件箱转移到 NotesBench 文件夹
  • 读取最新的收件箱内容
  • 回复已经读取的消息
  • 将所有已经发送的消息保存在 Sent 文件夹中
  • 每 15 分钟(也就是每次迭代)检查一次新邮件

在表 4 中可以看到,与 R6Mail 相比,N8Mail/N7Mail 现在总共多了 35 个事务(267 - 232),也就是每次迭代每个用户多了 1.45 个事务:

表 4. 用户操作:N8Mail、N7Mail 和 R6Mail(6 小时的运行周期,24 次迭代)
工作负载操作 N8Mail 和 N7Mail 工作负载操作数R6Mail 工作负载操作数
刷新收件箱2424
读取消息120(每次迭代 5 次读取)120(每次迭代 5 次读取)
回复所有消息12N/A
向一个收件人发送消息24N/A
向三个收件人发送消息124(NthIteration 设置为 6)
创建约会14(NthIteration 设置为 6)
发送邀请14(NthIteration 设置为 6)
发送 RSVP14(NthIteration 设置为 6)
将文档移动到 NotesBench 文件夹24N/A
检查新邮件24N/A
删除两个文档2424
给文档加标志(第 6 版)N/A24
在收件箱中添加文档(第 6 版) N/A 24
总事务数(每个用户在 6 小时的运行周期中,24 次迭代) 267232

注意:一次迭代大约 15 分钟。另外,因为 N8Mail 和 N7Mail 使用相同的用户操作集,工作负载操作数是相同的,所以将它们显示在同一列中。

  • 发送 3,000 个邮件消息(来自不同的用户)来填充收件箱
  • 用适当的字段创建必需的配置文档
  • 创建一个 NotesBench 文件夹
  • 为收件箱中最新的邮件生成 5 个回复
  • 在数据库中存储 10 个邀请
  • 可选地添加阻塞发送者(blocksender)规则
  • 在规则中添加 10 个不属于有效工作负载用户的用户
  • 可选地添加颜色配置
  • 运行 Updall -R <maildb> 更新邮件数据库

服务器配置

用于邮件日志的测试数据库设置

注意:要想让邮件日志正常工作,邮件数据库需要不同的复制 ID。在创建邮件数据库之后,运行以下脚本来确保 ID 的惟一性。

可以将以下三行代码复制到一个文本文件中,并通过 Server.Load 作为定制的脚本运行。对于客户机 notes.ini 设置,MailServer 是指邮件数据库所在的服务器;nb_dbdir 是一个相对于数据目录的目录,可以在这里找到邮件数据库。

changeto [MailServer]!![nb_dbdir]mail[#].nsf
setreplid
dbclose

除了提供改进的用户操作之外,N8Mail 和 N7Mail 工作负载还使用了 R6Mail 未使用的服务器特性。使用这些特性使基准测试环境更接近部署环境。这会提高 Lotus Domino 服务器的 CPU 利用率。

服务器特性包括:

  • 事务日志记录。磁盘空间大约 4 GB,采用 Circular、Standard 或在运行时设置。
  • 邮件日志。磁盘空间大约 4 GB,日志包括所有消息。
  • DDM 探测。用默认值(events4.nsf)启用所有操作系统和消息。
  • 邮件过滤。每个邮件文件在阻塞邮件列表中有 10 个用户。这 10 个用户不在工作负载运行时的有效用户列表中。这是为了度量启用过滤特性的开销,而不是度量执行过滤的开销。
  • 使用默认的服务器任务。ServerTask=Update,Replica,Router,AMgr,AdminP,CalConn,Sched,RnRMgr,LDAP(来自服务器的 Notes.ini 文件)

关于 N8Mail、N7Mail 和 N8MailInit 工作负载的更多信息参见 Release Notes for Lotus Notes and Domino V8


结束语

N8Mail 能够更准确地模拟 Lotus Notes 和 Domino V8 负载,使用户模型更接近实际情况。当然,这些仍然只是基准测试工具。我们相信,这些工作负载(以及从硬件供应商等来源获得的其他数据)可以帮助您为当前和未来的升级、设备采购和部署决策制定更准确的计划。后续的文章会使用新的工作负载比较 Lotus Domino V8.0 和 Lotus Domino V7.0 为 Notes 客户机提供的性能。

参考资料

学习

讨论

条评论

developerWorks: 登录

标有星(*)号的字段是必填字段。


需要一个 IBM ID?
忘记 IBM ID?


忘记密码?
更改您的密码

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件

 


在您首次登录 developerWorks 时,会为您创建一份个人概要。您的个人概要中的信息(您的姓名、国家/地区,以及公司名称)是公开显示的,而且会随着您发布的任何内容一起显示,除非您选择隐藏您的公司名称。您可以随时更新您的 IBM 帐户。

所有提交的信息确保安全。

选择您的昵称



当您初次登录到 developerWorks 时,将会为您创建一份概要信息,您需要指定一个昵称。您的昵称将和您在 developerWorks 发布的内容显示在一起。

昵称长度在 3 至 31 个字符之间。 您的昵称在 developerWorks 社区中必须是唯一的,并且出于隐私保护的原因,不能是您的电子邮件地址。

标有星(*)号的字段是必填字段。

(昵称长度在 3 至 31 个字符之间)

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

 


所有提交的信息确保安全。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=Lotus
ArticleID=260170
ArticleTitle=IBM Lotus Notes V8 工作负载:将性能提升到新的水平
publish-date=10082007