模式 daemon

LDAP 服务在服务器上运行时,会衍生模式 daemon,它以一定的时间间隔定期运行。在 Domino® 目录的管理服务器上运行的模式守护程序实现了模式更改,并将这些更改传播到域中运行 LDAP 服务的其他(附属)服务器。运行在每台附属服务器上的模式 daemon,将使用从管理服务器传播而来的模式更改来更新其自己的 LDAP 服务。“Domino® LDAP模式”数据库 (SCHEMA.NSF) 是传播模式更改的载体。

模式 daemon 确保域中运行的每个 LDAP 服务都使用最新的模式,并且在各服务器之间一致。模式 daemon 在第一次启动 LDAP 服务时运行,然后以缺省 15 分钟的时间间隔运行。

缺省情况下,LDAP 服务在 Domino® 目录的管理服务器上运行。管理服务器上的 LDAP 服务衍生的模式 daemon,可执行下列操作以维护域的模式:

  1. 根据 SCHEMA.NTF 模板创建“Domino® LDAP 模式”数据库 (SCHEMA.NSF)(当模式守护程序在此发行版中第一次运行时,以及以后删除该“模式”数据库时)。
  2. 通过从下列文件中加载信息,将该域的模式构建到内存中:
    • 本地 LSCHEMA.LDIF 文件中的 LDAP 标准模式元素,这些元素不会更改。
    • Domino® 目录中的表单和字段,用于提供特定于 Domino 的模式元素,以及(可选)作为表单和字段添加的扩展模式元素。出于性能上的考虑,缺省情况下此步骤每 24 小时才会执行一次。可以使用 NOTES.INISchema_Daemon_Reloadtime 设置来更改缺省时间间隔。
    • 本地“Domino® LDAP 模式”数据库中的“扩展文档”视图中的模式元素。
      注: 如果模式守护程序在其中多个文件中发现相同的模式元素,那么它会按下面的优先顺序决定使用哪个定义:1) LSCHEMA.LDIF;2) Domino® 目录;3)“模式”数据库。
  3. 在第一次运行时,在模式数据库的“所有架构文档”视图中将内存中的模式发布到磁盘。随后,模式 daemon 将比较内存中的模式和从模式数据库中发布到磁盘上的模式,如果二者不同,该 daemon 将用内存中最新的模式更新模式数据库中的“所有架构文档”视图中的模式。出于性能上的考虑,缺省情况下此步骤每 24 小时才会执行一次。可以使用 NOTES.INISchema_Daemon_Resynctime 设置来更改缺省时间间隔。
  4. 如果本地模式数据库与运行 LDAP 服务的附属服务器上的副本不同,将本地数据库复制到其副本上。此复制会在步骤 3 完成后立即发生,不需使用“连接”文档。如果附属服务器上还没有模式数据库的本地副本,管理服务器上的模式 daemon 将在附属服务器上创建一个。

域中运行 LDAP 服务的每台附属服务器上的模式 daemon,可执行下列操作:

  1. Domino® 目录的管理服务器上“模式”数据库的副本中信息复制到其本地“模式”数据库(如果这两个副本不同)。

    如果附属服务器还没有模式数据库的本地副本,且管理服务器正在运行,则附属服务器会从管理服务器拉入副本。如果管理服务器不可用,那么附属服务器将使用本地 LSCHEMA.LDIF 文件和 Domino® 目录表单来确定该模式,直到管理服务器可用为止。

  2. 在第一次运行时,在本地模式数据库的“所有架构文档”视图中将发布到磁盘上的模式加载到内存中。随后,比较内存中的模式和从本地模式数据库中发布到磁盘上的模式。如果二者不同,使用本地模式数据库中发布的最新模式更新内存中的模式。
提示: 可以使用服务器命令 Tell LDAP ReloadSchema 手动启动上面任务中所述的步骤。