Technote (troubleshooting)
问题
怎样决定在 Domino 服务器上是否需要建立更多的 mail.box?
解决问题
服务器在收发大量邮件时容易造成积压,导致 Router 无法有效的访问 mail.box 文件,这样就会产生访问冲突,(当其它线程或者进程锁住了 mail.box,会导致当前线程访问 mail.box 的请求被拒绝),在访问冲突的环境中,需要创建更多的 mail.box,创建多个邮箱时使用的文件命名约定为:mail1.box、mail2.box...mailn.box,其中 n 表示配置设置文档中指定的邮箱数。
产品开发团队建议您,当观察到访问冲突占比持续超过2%时,就需要再创建一个附加的 mail.box 。注意:不应该基于邮件路由高峰时段的统计信息,而要基于常态下统计信息的平均值来做判断。
您可以在 Domino 服务器的控制台执行命令"show stat mail",得到下列两项统计数据:
-- Mail.Mailbox.Accesses和Mail.Mailbox.AccessConflicts.
然后根据统计数据,将其代入下列公式进行计算:
-- (Mail.Mailbox.AccessConflicts / Mail.Mailbox.Accesses) x 100 > 2.
如果上述计算结果大于2,您需要建立更多的 mail.box。
注意:为了获得上述计算公式所需的统计信息,至少需要在 Domino 服务器上配置2个mail.box。同时,您需要在服务器上打开一个mail.box用以产生统计信息。
通常,在大多数生产环境中,推荐您最多部署4个mail.box。在某些部署了更多 mail.box 的案例中,由于 Router 任务不得不去更多的地方扫描新邮件,可能导致服务器性能下降。所以并不是 mail.box 数量越多越好,而是应该根据实际需要来做决定。
如果出现邮件路由性能问题,您也许应该先检查一下 mail.box 的数量,尝试减少 mail.box 数量。如果问题依然存在,那可能意味 mail.box 数量仍然过多。
*****************************************************
请按照下面步骤,增加服务器上mail.box的数量:
1. 打开服务器的配置文档
2. 标签“路由/SMTP”->“基本”,在“邮箱数”域内输入 mail.box 数量(默认为1,最多可以配置 10 个邮箱)。
3. 保存并关闭服务器配置文档。
4. 重新启动 Domino 服务器完成初始化并创建新的 mail.box.
更多信息,请参考下面的表格:
统计信息名称 | 描述 |
Mail.Mailbox.Accesses | 服务器上 mail.box 被任意线程访问的总次数。 |
Mail.Mailbox.AccessConflicts | 由于并发线程数超过了配置的邮箱数而使试图访问邮箱的线程不得不等待的次数。 例如,如果配置了三个邮箱,但却有四个并发访问,则冲突计数会增加。 如果访问冲突数始终超过 Mail.Mailbox.Accesses 值的 2%,建议再创建一个邮箱。 |
Mail.Mailbox.CurrentAccesses | 当前总的访问数(例如,2 表示此时有两个线程正在访问邮箱)。 |
Mail.Mailbox.AccessWarnings | 访问邮箱的线程数(即 Mail.Mailbox.CurrentAccesses 的值)达到了比配置的邮箱数小 1 的次数。 例如,如果同时有两个线程试图访问 MAIL.BOX,却有配置了三个邮箱,则警告数就会增加。 如果警告数始终超过 Mail.Mailbox.Accesses 值的 10%,建议再创建一个邮箱。 |
Mail.Mailbox.MaxConcurrentAccesses | 记录中的最大并发访问数。 |