R5 IMAP 工作负载脚本
各种 IMAP 工作负载脚本如下所示。
IMAP 初始化工作负载脚本样本
双星号(**)之间的文本表示备注。
**使用脚本为运行 NotesBench IMAP 邮件脚本初始化数据库;等待 0 - 5 分钟(5 分钟 = 300,000 毫秒)**
pause 0-300000
**如果出现错误,等待 1 到 5 分钟然后重试**
errordelay 60000-300000
**创建邮件文件**
changeto "[MailServer]!!mail[#].nsf" [MailTemplate]
**设置“所有者”**
Setcalprofile
**使邮件文件支持 IMAP**
console [MailServer] load convert -m mail[#].nsf
pause 60000
**确保在邮件数据库中存在足够的文档(仅一次)**
beginloop
sendssmtpmessage [NormalMessageSize] [MessageLineSize]
mail[#]@[RecipientDomain]
[SMTPHost] [RecipientDomain] [ClientHost]
rewind [NumMailNotesPerUser]
pause 60000
**打开视图**
open $FolderInfo
close
open $FolderRefInfo
close
open $Inbox
close
drop
IMAP 工作负载脚本样本
双星号(**)之间的文本表示备注。
**暂停一段随机时间间隔,以便使多个进程适当地错开;暂停 0-3 分钟(3 分钟 = 180000 毫秒)**
Pause 0-180000
**确保在找到错误时脚本不会退出。**
if [R5IMAPBreak]
break 0
**如果出现错误,等待 1 到 2 分钟然后重试。**
ErrorDelay 60000-120000
**开始执行外部循环**
BeginLoop
**建立 IMAP 连接/打开邮件应用程序**
ImailLogin [IMAPHost] Mail[#] NotesBench
**暂停 8 到 12 分钟,以允许过渡处理发生**
Pause 480000-720000
**列出所有收件箱**
ImailListMailboxes
**打开 INBOX 文件夹**
ImailOpenMailbox INBOX
**开始执行内部循环**
BeginLoop2
**获取邮箱中的最后一页项目**
ImailGetLastEntries
**等待 5 到 10 秒钟以仔细察看该视图**
**阅读邮箱中的 5 个邮件,删除 2 个邮件,投递 1 个邮件。每个邮件阅读 10 到 20 秒钟**
ImailFetchOld CURRENT
**等待 10 到 20 秒钟**
Pause 10000-20000
ImailFetchOld NEXT
**等待 10 到 20 秒钟**
Pause 10000-20000
ImailFetchOld NEXT
**等待 10 到 20 秒钟**
Pause 10000-20000
**删除当前邮件**
ImailDeleteEntry
**等待 10 到 20 秒钟**
Pause 10000-20000
ImailFetchOld NEXT
**等待 10 到 20 秒钟**
Pause 10000-20000
ImailFetchOld NEXT_UNSEEN
ImailSetSeen
**等待 10 到 20 秒钟**
Pause 10000-20000
**向 INBOX 中投递(添加)邮件**
Imailpostmessage [NormalMessageSize] [MessageLineSize] INBOX
**等待 10 到 20 秒钟**
Pause 10000-20000
**删除另一个邮件**
ImailDeleteEntry
**等待 10 到 20 秒钟**
Pause 10000-20000
**编写 1 个新邮件(用 1 到 2 分钟撰写它)**
Pause 60000-120000
**发送 SMTP 邮件,对指定编号的收件人执行 LDAP 查找**
SendSmtpMessage [NormalMessageSize] [MessageLineSize] [NumMessageRecipients] [SMTPHost] [RecipientDomain] [ClientHost] [NthIteration]
**在办公室开会的同时,在桌面暂停 8 分多钟到 12 分多钟**
Pause 515000-755000
**检查有无新邮件**
ImailCheckForNewMail
**再次重复执行内部循环序列(返回到 BeginLoop2 语句)**
rewind2 [R5IMAP_LOOP_N]
**注销并处理其他事务 3 到 6 分钟**
IMAILCloseMailbox
ImailLogout
Pause 180000-360000
**返回到外部循环(再次返回到 BeginLoop 语句)**
rewind [ScriptIterationLimit]