在启动代理之前,需要执行两项系统级别的准备任务:同步系统时钟,以及(在 Solaris 或 Linux 平台上)设置文件描述符限制。 以下各节介绍了这些任务。
在启动任何代理或客户端之前,同步将要与 Message Queue 系统进行交互的所有主机的时钟至关重要。如果使用消息到期(生存时间)功能,则同步尤为重要。来自未同步时钟的时间戳可能会使消息到期功能无法按预期方式工作,并且可能会使消息无法传送。同步对于代理群集同样至关重要。
应该对系统进行配置以运行时间同步协议,如简单网络时间协议 (Simple Network Time Protocol, SNTP)。通常,Solaris 和 Linux 中的 xntpd 守护进程以及 Windows 中的 W32Time 服务支持时间同步。 (有关配置此服务的信息,请参见操作系统文档。)代理运行后,要避免往回设置系统时钟。
在 Solaris 和 Linux 平台上,运行客户端或代理的 shell 对进程可以使用的文件描述符数量的限制不是很严格。在 Message Queue 中,客户端创建的每个连接或代理接受的每个连接都使用其中一个文件描述符。每个具有持久性消息的物理目的地也使用文件描述符。
因此,文件描述符限制限定了代理或客户端可以具有的连接数。默认情况下,Solaris 最多可具有 256 个连接,Linux 最多可具有 1024 个连接。(在实践中,由于将文件描述符用于持久性,因此连接限制实际上低于此值。)如果您需要的连接数高于此值,则必须提高将要执行客户端或代理的每个 shell 中的文件描述符限制。有关如何执行此操作的信息,请参见 ulimit 手册页。