Windows 服务启动类型中的“延迟启动”起什么作用?

Windows 服务启动类型中的“延迟启动”起什么作用?

Windows 服务的属性设置“自动”和“自动(延迟启动)”之间有什么区别?即,将我的服务设置为其中一个或另一个会得到什么或失去什么?

在 Windows Server 2008 x64 上运行服务

答案1

标记为的服务自动(延迟启动)将在所有其他指定为自动的已启动。根据我的经验,这意味着它们在计算机启动后 1-2 分钟内启动。

此设置最有助于减少机器启动时对资源的“疯狂争夺”。

请注意,当您同时启动 20 个服务时,每个服务的启动速度都会变慢,因为它会与其他服务竞争机器的宝贵资源(CPU/RAM/磁盘/网络)。也就是说,每项服务都需要更长的时间才能投入使用!

如果你有一些关键服务,那么你可能希望将这几个服务设置为自动的并尽可能多地设置其他自动(延迟启动)。这将确保关键服务尽早获得最多的资源并尽快可用,而非关键服务则稍晚一些启动(根据定义,这是可以的)。

答案2

据我了解,这只是推出该服务之前的延迟。

Windows 的后续版本引入了此功能,以确保它们在启动过程中不会互相绊倒(同时启动无数个进程不利于性能)。

此功能的文档指出,这样标记的服务将在“启动后不久”启动,希望启动时所需的服务能够稍微稳定下来。

答案3

这主要用于使用 AD 帐户启动的服务。如果服务在服务器有网络连接以联系 DC 之前尝试启动,它将失败,有时系统会卡住并无法访问。

延迟确保服务将在网络连接建立后启动,以便使用 AD 帐户。

答案4

这是一个例子。我有一个依赖于 MySQL 数据库服务的 SonarQube 服务。因此,我将 MySQL 服务设置为自动,以便在机器启动时启动并运行数据库。我将 SonarQube 服务设置为自动(延迟)启动,以确保它在它所依赖的数据库服务启动后启动。

如果您有这样的依赖关系,使用延迟启动来确保依赖服务以正确的顺序启动会很有帮助。

相关内容