IBM®
跳转到主要内容
    中国 [选择]    使用条款
 
 
Select a scope: Search for:    
    首页    产品    服务与解决方案     支持与下载    个性化服务    
跳转到主要内容

developerWorks 中国  >  Lotus  >

IBM Lotus Domino 8.0.1 在 64 位服务器上的性能

developerWorks
文档选项

未显示需要 JavaScript 的文档选项

讨论


级别: 中级

Nirmala Venkatraman, 性能架构师, IBM
Andy Nolet, 软件工程师, IBM
Wu W Huang, 软件工程师, IBM

2009 年 5 月 11 日

本文将通过 N8Mail 工作负载比较 64 位 IBM® Lotus® Domino® 8.0.1 和 32 位 Lotus Domino 8.0.1 服务器的性能。

对于 IBM Lotus Domino 8.0.1,Lotus Domino 为 Microsoft® Windows® 2003 和 IBM AIX® 平台提供了原生 64 位支持选项。和以前的版本相比,采用 64 位 Lotus Domino 能够支持更多的内存。新的 64 位平台对保证 Lotus Domino 邮件服务器的性能非常重要。

本文通过 N8Mail 工作负载将 64 位 Lotus Domino 8.0.1 服务器平台与 32 位 Lotus Domino 8.0.1 服务器平台进行比较。N8Mail 工作负模拟一个 Lotus Notes® 8 客户端邮件用户。关于 N8Mail 工作负载的更多信息,请参阅 developerWorks® 文章 “IBM Lotus Notes V8 工作负载:将性能提升到新的水平”。

我们对测试方法进行了修改,以便更准确地反映客户的部署环境。邮件文件中包含 3000 个大小不同的文档。我们还启用了事务日志、邮件记录、Domino 域监控(DDM)探针和邮件规则。测试过程中运行默认的服务器任务。因此最终的净负载要比原来的 R6Mail 工作负载更大,所以不能将两者进行对比。另外,我们不再显示可能的最大用户数量,而是研究一个大约包含 4000 个用户的典型部署。

本文使用的测试套件帮助您理解在相同的硬件配置下,64 位 Lotus Domino 和 32 位 Lotus Domino 的性能差异。可以把第一个测试作为基准。它使用一台 32 位 Lotus Domino 8.0.1 服务器,运行基于 mail8.ntf 的邮件数据库,Lotus Domino 8 ODS 为 48 级,使用 N8Mail 工作负载。第二个测试是一台 64 位 Lotus Domino 8.0.1 服务器,运行基于 mail8.ntf 的邮件数据库,Lotus Domino 8 ODS 为 48 级,使用 N8Mail 工作负载。

为了便于查找,下面图表中的标签已在表 1 列出。


表 1. 性能测试标签
说明工作负载模板ODS服务器
Lotus Domino 8.0.1, 32-bitN8MailMail8.ntf48Lotus Domino 8.0.1
Lotus Domino 8.0.1, 64-bitN8MailMail8.ntf48Lotus Domino 8.0.1

下一节中的 Lotus Domino 服务器 Notes.ini 数据是经过大量测试和深入统计分析得出的极限值。如果没有对 Lotus Domino 产品服务器的性能经过深入分析,不建议采用这些数据。此外,这些 Notes.ini 设置适合这个特定的平台,但不一定适合其他的平台。关于这些 ini 参数的解释以及如何确定最合适的取值,请参阅附录。

注意:本文的结果来自受控环境下进行的基准测试。虽然在测试包的创建过程中做了一些工作以便包括典型的用户操作,但实际上用户很可能以不同的方式使用 Lotus Domino,而不仅仅是测试用例中使用的少量功能。因此,这些数据主要用于比较 Lotus Domino 版本的相对性能,而不是建议您这样进行部署。关于性能规划,请咨询硬件供应商。

另外我们还给出了不同硬件平台的结果,这些配置产生的结果也不一样。我们的目标是 Lotus Domino 本身的性能,这些数据不应该用于比较不同的硬件平台。





回页首


Microsoft Windows 2003 服务器的测试结果

下表列出了 Microsoft Windows 测试的硬件和软件配置。


表 2. Microsoft Windows 测试的硬件配置
模型基于 Intel x64 的 PC 机
处理器数量/速度8 个处理器,总主频为 3.33GHz
安装的内存8 GB
活动物理硬盘 35 个
活动逻辑卷采用 RAID 0,5 组
操作系统Microsoft Windows 2003 Server Enterprise x64 SP2

表 3. Microsoft Windows 测试的软件配置
Notes.ini 设置
platform_statistics_enabled=1
server_pool_tasks=80
server_max_concurrent_trans=100
Show_Server_Performance=1
NSF_DBCache_MaxEntries=6000
RouterDBCacheSize=6100
Schedule_NO_Validate=1
server_pool_tasks=80
CONSOLE_LOG_ENABLED=1
NSF_Buffer_Pool_Size_MB=256
NLCACHE_SIZE=15938552
CREATE_R8_DATABASES=1

Lotus Domino 服务器作为单分区服务器安装在 Intel x64 系统上,该系统运行 Microsoft Windows 2003 64-bit Enterprise Server,具有 8 个处理器,以及 Microsoft Windows 操作系统支持的 8 GB 内存。Lotus Domino 数据文件、邮件记录和邮箱安装在采用 RAID 0 的一个 IBM FAStT 600 组中,容量为 475 GB。邮件数据库分布在 RAID 0 的三个 475 GB 的 IBM FAStT 600 组中。事务日志文件保存在单独的硬盘上。系统分页文件设置为 8000 MB,位于 IBM FAStT 600 组中的一个小型 3 磁盘 RAID 卷中。网络访问使用全双工模式的 1 GB 以太网适配器。图 1-3 显示了在不同用户负载下两次测量的资源占用情况。


图 1. 处理器占用率
处理器占用率

图 1 表明,32 位和 64 位 Lotus Domino 在 1,000 到 5,000 个模拟用户的各种负载下,处理器占用率是一样的。


图 2. 每秒执行的磁盘 I/O
每秒执行的磁盘 I/O

图 2 表明,32 位和 64 位 Lotus Domino 在 1,000 到 5,000 个模拟用户的各种负载下,每秒执行的磁盘 I/O 是一样的。


图 3. nServer 虚拟内存 (MB)
nServer 虚拟内存 (MB)

32 位和 64 位 Lotus Domino 服务器都使用 Lotus Domino 提供的 cacheset.exe 工具在 Microsoft Windows 2003 服务器上将 LargeSystemCache 设为 2.4 GB。图 3 表明,即使在 3,000 个虚拟用户负载下,64 位 Lotus Domino 服务器就使用了 2 GB 以上的虚拟内存。负载为 5,000 个用户时,32 位 Lotus Domino 服务器使用了接近 2 GB 的虚拟内存。在不同负载下,64 位 Lotus Domino 服务器比 32 位 Lotus Domino 服务器多消耗了大约 400 MB 虚拟内存。nserver.exe 进程虚拟内存的增加主要源于增加了进程的私有内存,而不是增加了在所有 Lotus Domino 进程中共享的内存。我们还发现,在相同用户数量下 Lotus Domino 32 位和 Lotus Domino 64 位服务器的可用物理内存没有明显区别。


表 4. 4,000 个用户下的资源使用
服务器Lotus Domino 8.0.1,32 位Lotus Domino 8.0.1,64 位百分比变化
邮件模板Mail8.ntfMail8.ntfNA
邮件数据库 ODS 级别 4848NA
负载N8MailN8MailNA
处理器占用百分比18.117.5-3.3%
每秒磁盘读216206-4.6%
每秒磁盘写5865870%
使用的 nServer 虚拟内存(MB)16702128+27.4%
可用物理内存(MB)28502764-3%
每秒网络传输的字节数25010312425422-3.0%

表 4 比较了 Lotus Domino 服务器在 4,000 个用户负载下的几种关键资源占用情况。这表明从 32 位 Lotus Domino 升级到 64 位在处理器占用、磁盘 I/O 和网络传输速度方面没有明显的区别。





回页首


AIX 服务器的测试结果

表 5 和表 6 显示了在 AIX 服务器上测试 Microsoft Windows 的硬件和软件配置。


表 5. AIX 服务器的硬件配置
模型P570 PowerPC®_POWER5™
处理器数量/速度双物理/双逻辑处理器(SMT),总主频为 1.5GHz
安装的内存16 GB RAM
活动物理硬盘IBM FAStT Fiber Channel 存储,七层,每层 14 个 15,000 RPM 磁盘,使用 RAID 0 配置为四个逻辑卷
活动逻辑卷三组用于 Lotus Domino 程序/数据,一组用于事务日志
操作系统AIX 5.3 ML5 64 位

表 6. AIX 服务器的软件配置
Notes.ini 设置
ServerTasks=Replica,Router,Update,AMgr,Adminp,Sched,CalConn,RnRMgr,LDAP
NLCACHE_SIZE=159383552
Server_Transinfo_range=22
NSF_Buffer_Pool_Size_MB=250
NSF_DBUCACHE_MAX_ENTRIES=6000
RouterDbCacheSize=6100
Server_Pool_Tasks=100
Server_Max_Concurrent_Trans=100
Server_Show_Performance=1
NSF_DbCache_MaxEntries=6000
SCHEDULE_NO_VALIDATE=1
CREATE_R8_DATABASES=1

AIX 测试服务器是一台配置成多 LPARS 的 p570+(逻辑分区或 LPAR 是指将处理器、内存和硬件资源划分成多个环境,各自独立运行自己的操作系统和应用程序)。测试使用 LPAR 设置成一个单独的 DPAR(运行 Lotus Domino 服务器的 Domino 分区)。我们将这个 LPAR 配置成两个有上限的物理处理器,由于运行 AIX 5.3,还可以利用并行多线程(SMT)增加两个逻辑处理器。

IBM FAStT Fiber Attached Storage 使用 RAID 0 和 JFS2 配置。

Lotus Domino 数据文件、邮件记录和邮箱安装在采用 RAID 0 的一个 IBM FAStT 600 组中,容量 475 GB。邮件数据库分布在采用 RAID 0 的三个 475 GB IBM FAStT 600 组中。事务日志文件使用 RAID 0 保存在单独的逻辑卷中。网络访问使用全双工模式的 1 GB 以太网适配器。

图 4 和图 5 显示了不同用户负载下测试的资源占用情况。


图 4. 处理器占用率
处理器占用率

图 4 显示了 Lotus Domino 32 位和 Lotus Domino 64 位在相同虚拟用户数量下的处理器占用情况。32 位和 64 位 Lotus Domino 在 1,000 到 5,000 个模拟用户的不同负载下处理器的占用率基本相同。


图 5. 每秒执行的磁盘 I/O
每秒执行的磁盘 I/O

图 5 显示了 Lotus Domino 32 位和 Lotus Domino 64 位在相同模拟用户数量下的磁盘 I/O 情况。与 32 位 Lotus Domino 相比,64 位 Lotus Domino 的磁盘 I/O 速度略有提高(越小越好),这是因为 64 位应用程序增加了虚拟内存的地址空间。


表 7. 4,000 个用户下的资源使用
服务器Lotus Domino 8.0.1,32 位Lotus Domino 8.0.1,64 位百分比变化
邮件模板Mail8.ntfMail8.ntfNA
邮件数据库 ODS 级别4848NA
负载N8MailN8MailNA
处理器占用百分比58591.7%
每秒磁盘读525381-21%
每秒磁盘写680626-8%
使用的服务器虚拟内存(MB) 1.5992.52858%
每秒网络传输的字节数 25488282468801-3%

表 7 对 Lotus Domino 8.0.1/AIX 服务器在 4,000 个虚拟用户负载下的几种重要资源占用情况进行了比较。结果表明使用 64 位 Lotus Domino 比相同服务器配置下的 32 位 Lotus Domino 能够访问更多的虚拟内存。此外,64 位 Lotus Domino 服务器每秒执行的磁盘读写次数也比 32 位 Lotus Domino 服务器略少一些。





回页首


结束语

本文的测试表明从 Lotus Domino 8.0.1 32 位服务器升级到 Lotus Domino 8.0.1 64 位服务器是有意义的。对邮件应用程序来说,Lotus Domino 64 位和 Lotus Domino 32 位在处理器占用和磁盘 I/O 上没有变化。Lotus Domino 64 位服务器的虚拟内存增加了,所以需要为 64 位指针和地址提供支持。这一需求导致增长多种 Lotus Domino 内部数据结构。





回页首


附录


表 A1. Notes.ini 设置
Notes.ini 参数名说明
ConstrainedSHMSizeMB 最大共享内存,MB。
Create_R8_Databases 应用于 Lotus Domino 8 服务器。设置为 1 将在 Lotus Domino 8 服务器上创建一个新的 ODS 48 数据库。
DEBUG_ENABLE_SYS_V_SHM=1设置为 1 将使 Lotus Domino 使用 System V 共享内存而不是 UNIX® 平台上的 mmap 文件。
DEBUG_NSF_SHOW_ALLSTATS Lotus Domino 8 新增参数。设置为 1,让 Lotus Domino I/O 对数据库元数据、视图和对象进行统计。
EVENT_CORRELATION_POOL_SIZE指定事件任务和 DDM 使用事件关联池的大小。
EVENT_POOL_SIZE指定未处理事件、未处理通知和事件挂起所占用的内存大小。默认为 5242880 (5 MB)。
log_mailrouting 指定需要记录的路由器进程执行的路由器事件的级别。
MEM_AddressableMemSizeMB设置为覆盖 Lotus Domino 的 “可访问” 内存量的默认设置(默认值以 MB 为单位,随平台的不同的变化)。
MEM_EnablePreAlloc=1设为 1 启用共享内存预分配。
NLCACHE_SIZE指定 Namelookup Cache 的大小,单位为字节。默认值为 16 MB。
NSF_Buffer_Pool_Size_MBNSF 缓冲池的最大大小(字节),这部分内存专门用于缓冲 Lotus Domino 和磁盘存储之间的 I/O 传输。
NSF_Dbcache_Maxentries服务器可以同时放入数据库缓冲区的数据库数量。
RouterDbCacheSize路由器进程缓冲邮件数据库使用的 Router Database 缓存大小。
SCHEDULE_NO_VALIDATE启用或禁用 SchedMgr 每日忙时数据库输入验证:
0(默认)—— 启用验证
1 —— 禁用验证
Server_MAX_CONCURRENT_TRANS服务器能够调度的最大并发事务数量。
Server_Pool_TasksLotus Domino 服务器 (DbServer) 线程池中的物理线程数。
Server_Show_Performance应用于服务器。指定是否在控制台中显示服务器性能事件。设置为 1 将在控制台中显示服务器性能事件。
ServerTasks指定服务器启动时自动开始直到服务器关闭才结束的任务。


参考资料

学习

获得产品和技术

讨论


作者简介

Nirmala Venkatraman 是 Lotus Domino 服务器性能团队的架构师。


Andy Nolet 从 20 世纪 90 年代中期开始就为客户解决与 Notes 性能有关的问题。Andy 在加入 Domino 性能团队之前为 Lotus Support 工作。


Wu W Huang 是 Lotus Domino 性能团队的成员,主要从事 System Z 的研究。




对本文的评价










回页首


IBM 公司保留在 developerWorks 网站上发表的内容的著作权。未经IBM公司或原始作者的书面明确许可,请勿转载。如果您希望转载,请通过 提交转载请求表单 联系我们的编辑团队。
    关于 IBM 隐私条约 联系 IBM 使用条款